当然这是可能的。我不会使用实际的语法,但我会为您指明正确的方向。
假设您有搜索/输入组件。
它的渲染函数看起来像:
render: function(){
return (<div>
<input onChange={this.onChange}></input>
<SuggestionsList data={this.state.value} show={this.state.autoSuggest}></SuggestionsList>
<div>);
}
现在让我们创建 onChange 函数来设置状态以在我们想要的时候显示 autoSuggest:
onChange: function(val){
var state = {value: val};
if(val[0] === '@'){
state.autoSuggest=true;
}
this.setState(state);
}
您现在需要做的就是创建 SuggestionsList 组件,该组件将处理获取建议并返回列表。
请注意,您不需要使用此确切模式,如果您不想显示任何建议,则根本不返回建议列表可能更正确,但这取决于您。
我建议你在这里关注 facebook 的评论教程:http : //facebook.github.io/react/docs/tutorial.html
他们从服务器动态获取评论并更新的地方。它本质上是相同的模式。