你能把 propTypes 和 defaultProps 结合起来吗?
Can you combine propTypes with defaultProps?
我想知道你是否可以用不那么冗长的方式编写以下代码:
class MyComponent extends Component {
static propTypes = {
foo: PropTypes.string.isRequired,
bar: PropTypes.string,
};
static defaultProps = {
bar: '',
};
像这样:
class MyComponent extends Component {
static propTypes = {
foo: PropTypes.string.isRequired,
bar: [PropTypes.string, ''],
};
或者这样:
class MyComponent extends Component {
static propTypes = {
foo: PropTypes.string.isRequired,
bar: PropTypes.string(''),
};
不,当前的实现不能。
development/test 运行时需要
PropTypes (https://facebook.github.io/react/blog/2017/04/07/react-v15.5.0.html#migrating-from-react.proptypes),默认值将成为最终构建的一部分。
在未来,React 团队计划将 PropTypes 从 React 包的其余部分中分离出来。
如果他们有兴趣,您可以建议联系 React 团队。
我想知道你是否可以用不那么冗长的方式编写以下代码:
class MyComponent extends Component {
static propTypes = {
foo: PropTypes.string.isRequired,
bar: PropTypes.string,
};
static defaultProps = {
bar: '',
};
像这样:
class MyComponent extends Component {
static propTypes = {
foo: PropTypes.string.isRequired,
bar: [PropTypes.string, ''],
};
或者这样:
class MyComponent extends Component {
static propTypes = {
foo: PropTypes.string.isRequired,
bar: PropTypes.string(''),
};
不,当前的实现不能。
development/test 运行时需要
PropTypes (https://facebook.github.io/react/blog/2017/04/07/react-v15.5.0.html#migrating-from-react.proptypes),默认值将成为最终构建的一部分。
在未来,React 团队计划将 PropTypes 从 React 包的其余部分中分离出来。
如果他们有兴趣,您可以建议联系 React 团队。