lodash.debounce 在 React js 中搜索
lodash.debounce search in react js
我正在尝试使用 lodash 对搜索进行去抖动,去抖动。
但是每当 运行 我收到类型错误
TypeError: Cannot read property 'debounce' of undefined
我试过在代码中移动它,但不明白为什么它不起作用
我从导入它开始
import { _, debounce } from 'lodash'
我有如下输入
<input
type="text"
value={this.state.query}
onChange={(e) => {this.updateQuery(e.target.value)}}
placeholder="Search by title or author"
/>
连接到这个函数
updateQuery = (query) => {
_.debounce(() => query(this.setState({ query }), 500))
this.onBookSearch(query)
}
有人知道这是为什么吗?
我认为您的导入有问题。您可能希望将 _
作为默认值导入:
import _, {debounce} from 'lodash';
此外,您没有使用提取的函数:
updateQuery = (query) => {
debounce(() => query(this.setState({ query }), 500))
this.onBookSearch(query)
}
由于您是在导入中提取 {debounce}
,因此您可以直接使用它。
我正在尝试使用 lodash 对搜索进行去抖动,去抖动。
但是每当 运行 我收到类型错误
TypeError: Cannot read property 'debounce' of undefined
我试过在代码中移动它,但不明白为什么它不起作用
我从导入它开始
import { _, debounce } from 'lodash'
我有如下输入
<input
type="text"
value={this.state.query}
onChange={(e) => {this.updateQuery(e.target.value)}}
placeholder="Search by title or author"
/>
连接到这个函数
updateQuery = (query) => {
_.debounce(() => query(this.setState({ query }), 500))
this.onBookSearch(query)
}
有人知道这是为什么吗?
我认为您的导入有问题。您可能希望将 _
作为默认值导入:
import _, {debounce} from 'lodash';
此外,您没有使用提取的函数:
updateQuery = (query) => {
debounce(() => query(this.setState({ query }), 500))
this.onBookSearch(query)
}
由于您是在导入中提取 {debounce}
,因此您可以直接使用它。