Используйте PropTypes для определения типа свойства, который вы ожидаете
React предоставляет полезные функции проверки типов для проверки того, что компоненты получали свойства правильного типа. Например, ваше приложение вызывает API для извлечения данных, которые вы ожидаете в массиве, который затем передается компоненту в качестве свойства. Вы можете установить propTypes
на свой компонент, чтобы требовать, чтобы данные имели тип array
. Это даст полезное предупреждение, если данные переданные данные будут иметь другой тип, нежели array
. Рекомендуется использовать propTypes
когда вы заранее знаете какой тип данных должен поступить. Вы можете определить свойство propTypes
для компонента так же, как вы определили defaultProps
. При этом будет проверяться наличие свойства данного ключа с заданным типом. Вот пример, требующий тип function
для свойства handleClick
:
MyComponent.propTypes = { handleClick: PropTypes.func.isRequired }
В приведенном выше PropTypes.func
проверяет, что handleClick
является функцией. Добавление isRequired
говорит React, что handleClick
является обязательным свойством для этого компонента. Вы увидите предупреждение, если это свойство не указано. Также обратите внимание,
что func
представляет function
. Среди семи простых примитивов JavaScript
function
и boolean
(написанное как bool
) - это только два, которые
используют необычную орфографию. В дополнение к примитивным типам доступны другие типы.
Примечание. Начиная с версии React v15.5.0, PropTypes
импортируется независимо от
React, например:
import PropTypes from 'prop-types';
Примечание 2: Если вы пишете код не на чистом JavaScript, а на TypeScript, то вам PropTypes не понадобится, так как сам TypeScript предоставляет все необходимые средства для типизации.
Определите propTypes
для компонента Items
чтобы потребовать свойство quantity
и убедитесь, что его значение имеет тип number
.