меня был компонент View с пропсом data. Я этот props.data получал из state и указывал в View.propTypes = { data: PropTypes.array }.
Теперь я получаю data сразу в компоненте как const data = useSelector(getData) и View.propTypes больше не нужны.
Как мне снова получить валидацию данных?
Что приходит на ум - снова создать ViewContainer в который вынести const data = useSelector(getData) и передавать в <View data={data}/> - теперь снова можно иметь PropTypes.
как вариант да, либо воспользоваться ТС )))
Вопрос немного некорректный. Проптайпы нужны для описания интерфейса компонента, чтобы его можно было переиспользовать без страха «не передал что-то нужное, а то, что передал не того типа». С хуками проще — данные из стора больше не являются частью интерфейса компонента и не нуждаются в такой валидации — где бы ты не использовал компонент, он сам внутри себя возьмёт нужные данные нужного типа. Чтобы не обосраться внутри компонента хорошо поможет тайпскрипт, но, как я уже сказал — это другая проблема.
Обсуждают сегодня