<Component>
child
</Component>
我想做的事:
<Component>
<div></div>
{this.function()} // loads array of components
</Component>
問題:
我只能指定一個propType?我怎樣才能讓兩個不同的propType成爲一個?
謝謝!
<Component>
child
</Component>
我想做的事:
<Component>
<div></div>
{this.function()} // loads array of components
</Component>
問題:
我只能指定一個propType?我怎樣才能讓兩個不同的propType成爲一個?
謝謝!
我相信你想要做的應該沒問題。請參閱從Meteor react tutorial此代碼:
renderTasks() {
return this.getTasks().map((task) => (
<Task key={task._id} task={task} />
));
}
render() {
return (
<div className="container">
<header>
<h1>Todo List</h1>
</header>
<ul>
{this.renderTasks()}
</ul>
</div>
);
}
你可以很容易地修改render()
是:
render() {
return (
<div className="container">
<header>
<h1>Todo List</h1>
</header>
<ul>
<Task task={this.props.myTask} />
{this.renderTasks()}
</ul>
</div>
);
}
編輯:在回答到your comment - 是的,你可以指定備用PropTypes兒童。看到這個other answer:
static propTypes = {
children: React.PropTypes.oneOfType([
React.PropTypes.arrayOf(React.PropTypes.node),
React.PropTypes.node
]).isRequired
}
你能更清楚你想傳遞什麼樣的道具嗎? – Shota
也許[** this **](http://stackoverflow.com/a/40302064/2030321)可能對您有所幫助? – Chris
我試圖將func類型和節點類型傳入一個指定的prop位置 – Daltron