Описываю шаблонный компонент, который будет применяться в разных частях проекта, его входящие параметры и описываю эти параметры через PropTypes. В разных частях проекта передаваемые параметры в этот компонент будут разные, так как это отразить в шаблоне? надо же прописать, что какая-то часть необязательна - с помощью вопросительного знака при описании в PropTypes светит ошибку. И надо в шаблоне в сам компонент передавать все принимаемые по props параметры?
import React from 'react';
import { DatePicker } from 'rsuite';
import { locale } from 'constants/datePickerLocale';
import isEqual from 'deep-equal';
import pt from 'prop-types';
const DateField = ({
value = null,
defaultValue = null,
format,
changeHandler = undefined,
block = false,
size = null,
placement = null
}) => {
return (
<DatePicker
format={format}
locale={locale}
value={value}
defaultValue={defaultValue}
onChange={changeHandler}
block={block}
size={size}
placement={placement}
isoWeek
/>
);
};
DateField.propTypes = {
value: pt.instanceOf(Date),
defaultValue: pt.instanceOf(Date),
format: pt.string,
changeHandler: pt.func,
block: pt.bool,
size: pt.string,
placement: pt.string
};
export default React.memo(DateField, isEqual);