想象一下,input
有value={this.state.searchText}
。
search()
调用搜索查询。
清除输入和结果的正确方法是什么?我假设您需要在清除输入后使用searchText: ''
重新运行查询以获得原始结果。
resetSearch = () => {
this.setState({ searchText: '' }, () => {
this.search();
});
}
search = () => {
searchQuery(this.state.searchText);
}
或
resetSearch = () => {
this.setState({ searchText: '' });
this.search('');
}
search = (query) => {
searchQuery(query);
}
答案 0 :(得分:0)
这是一种风格选择。
在我看来,方法1更明确,更容易阅读 - 你知道搜索和搜索查询显然与国家互动。
第二种方法更适合单元测试,因为它取决于参数而不是组件状态。
最后,您可以通过可读性/可测试性IMO进行调用。