Autocomplete 自动完成时如何记录上次搜索请求?
例如,当用户键入Autocomplete 自动完成时如何记录上次搜索请求?,autocomplete,redux-saga,Autocomplete,Redux Saga,例如,当用户键入android时 客户端向服务器发送多个请求 即 a an 和等等 我想只在服务器上记录android搜索请求。 我该怎么做 我正在考虑以下策略,但不知道是否有更好的策略 像以前一样进行自动完成 如果用户按下键盘后1秒已过去,则发送特殊记录此搜索请求 如果我要实现上述功能,如何使用redux saga来实现它?您需要实现一系列最新的效果。因此,如果您的组件分派INPUT\u CHANGED操作,那么您的故事将如下所示: import { call, takeLatest, del
android
时
客户端向服务器发送多个请求
即
a
an
和
等等
我想只在服务器上记录android
搜索请求。我该怎么做 我正在考虑以下策略,但不知道是否有更好的策略
1秒
已过去,则发送特殊记录此搜索请求
redux saga
来实现它?您需要实现一系列最新的效果。因此,如果您的组件分派INPUT\u CHANGED
操作,那么您的故事将如下所示:
import { call, takeLatest, delay } from 'redux-saga/effects'
function* handleLog(action) {
// debounce by 1 sec
yield delay(1000);
if (action.payload.LOG_THIS_SEARCH_REQUEST) {
const apiResult = yield api.log(action.payload.value);
... // logic after api call is done
}
}
function* watchInput() {
// log latest input change
yield takeLatest('INPUT_CHANGED', handleLog);
}
所以,在提供的示例中,如果用户在1秒内触发新的输入更改(即添加一个字母),那么saga将只处理最新的一个字母。谢谢,您刚才是否有效地实现了redux saga的去Bounce
效果?