Дополнительная функция стрелки реквизита

#reactjs

Вопрос:

Я хотел бы сделать универсальный компонент. Для этого я хотел бы иметь возможность передавать необязательный параметр в реквизит. Я использую для этого интерфейс в typescript, но этот проект в чистом виде. Есть ли способ сделать что-то вроде машинописи, чтобы сделать параметры необязательными ? То, как я делал в машинописном тексте, похоже на это

 interface buttonProps {
    title: string,
    color?: string
}
 

Ответ №1:

Все реквизиты являются необязательными, если вы не определили типы реквизитов и не пометили их isRequired .

Проверка типов с помощью проптипов

Пример:

 import PropTypes from 'prop-types';

const buttonPropTypes = {
  title: PropTypes.string.isRequired, // required
  color: PropTypes.string,            // optional
};

...

Button.propTypes = propTypes;

export default Button;