需要帮助使搜索功能在 React 中工作
need assistance on making search feature work in react
所以我有一个名为 Form 的组件,该组件可以根据用户输入启用实时搜索,
表单组件必须在搜索组件内呈现,这是它的屏幕截图
在我的 App.js 上,我为搜索组件提供了一个道具,它包含一个名为 performSearch
的函数
但是,当我尝试提交搜索输入时出现此错误:
有人可以帮忙吗
您可以在一次渲染中将任意数量的道具传递给您的组件,即
在渲染搜索组件时,像这样传递 onSearch
属性:
<Route
exact
path="/search"
render={() => (
<Search
onSearch={this.performSearch}
data={this.state.pics}
/>
)}
/>
如果你像这样传递道具,它永远不会在组件中找到道具 onSearch
因为它正在渲染第一个匹配并且它没有任何道具 onSearch
这是不正确的方法:
<Route
exact
path="/search"
render={() => <Search data={this.state.pics} />}
/>
<Route
exact
path="/search"
component={() => <Search onSearch={this.performSearch} />}
/>
供您参考,您可以检查一下:https://codesandbox.io/s/llk96nk5l
所以我有一个名为 Form 的组件,该组件可以根据用户输入启用实时搜索,
表单组件必须在搜索组件内呈现,这是它的屏幕截图
在我的 App.js 上,我为搜索组件提供了一个道具,它包含一个名为 performSearch
的函数但是,当我尝试提交搜索输入时出现此错误:
有人可以帮忙吗
您可以在一次渲染中将任意数量的道具传递给您的组件,即
在渲染搜索组件时,像这样传递 onSearch
属性:
<Route
exact
path="/search"
render={() => (
<Search
onSearch={this.performSearch}
data={this.state.pics}
/>
)}
/>
如果你像这样传递道具,它永远不会在组件中找到道具 onSearch
因为它正在渲染第一个匹配并且它没有任何道具 onSearch
这是不正确的方法:
<Route
exact
path="/search"
render={() => <Search data={this.state.pics} />}
/>
<Route
exact
path="/search"
component={() => <Search onSearch={this.performSearch} />}
/>
供您参考,您可以检查一下:https://codesandbox.io/s/llk96nk5l