我是AngularJS的新品牌,我正在为我的第一个开源项目做出贡献 . 我的第一个问题是,当使用页面上的搜索框时,如果你重复搜索足够多次(例如,搜索数学然后删除s,重新输入s等),最终搜索数学将返回用于数学的结果 . 搜索设置为使用每个键盘执行搜索 .

你可以在这里测试一下:https://www.oppia.org/

开发人员工具显示这是一个计时问题,其中先前请求的搜索结果在当前请求的搜索结果之前返回 .

我看了几个问题,这两个问题似乎最相关:

我已尝试使用取消承诺选项,但到目前为止的测试表明,实际上没有任何请求被取消 . 在看另一个问题时,似乎辩手应该取代其他选择,但我不确定 .

我们正在使用v1.4,我们已经实现了一个400毫秒的去抖动器 . 我的问题是,解决方案只是让debouncer延迟更长时间,还是我需要进一步调查在发出新请求时取消之前的xhr请求?