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.