我應該向父組件及其子組件添加propTypes嗎?驗證父級和子級組件上的propType?
比如我有一個是通過3個道具<Header modal={this.state.modal} lives={this.state.lives} score={this.state.score} />
組件和我確認,像這樣:
const Header = function(props) {
if (props.modal) {
return (<Logo logo={logo} />);
} else {
return (
<div>
<Lives lives={props.lives} />
<Score score={props.score} />
</div>
);
}
};
Header.propTypes = {
modal: React.PropTypes.bool.isRequired,
lives: React.PropTypes.number.isRequired,
score: React.PropTypes.number.isRequired,
};
正如你可以看到有兩個子組件<Lives lives={props.lives} />
和<Score score={props.score} />
。我也爲這些組件添加了propTypes。
const Score = function(props) {
return (
<p className="score score--right">
{props.score} pts
</p>
);
};
Score.propTypes = {
score: React.PropTypes.number.isRequired,
};
因此,它是多餘的是檢查同樣的道具兩次?這是過於複雜的事情(使我的代碼更難以管理)。