react/forbid-prop-types
禁止使用any,array,object
为什么
any
,array
,object
不够明确,降低了代码的可维护性
建议
any
应该被替换为任何东西。array
和object
可以分别替换为arrayOf
和shape
。
错误示例
tsx
import { PropTypes } from 'prop-types';
const MyComponent = ({ a }) => a;
MyComponent.propTypes = {
a: PropTypes.any,
r: PropTypes.array,
o: PropTypes.object
};
import { PropTypes } from 'prop-types';
const MyComponent = ({ a }) => a;
MyComponent.propTypes = {
a: PropTypes.any,
r: PropTypes.array,
o: PropTypes.object
};
正确示例
tsx
import { PropTypes } from 'prop-types';
const MyComponent = ({ a }) => a;
MyComponent.propTypes = {
a: PropTypes.string,
r: PropTypes.arrayOf(PropTypes.string),
o: PropTypes.shape({})
};
import { PropTypes } from 'prop-types';
const MyComponent = ({ a }) => a;
MyComponent.propTypes = {
a: PropTypes.string,
r: PropTypes.arrayOf(PropTypes.string),
o: PropTypes.shape({})
};