我是AngularJS的新品牌,我正在为我的第一个开源项目做出贡献。我的第一个问题是,当使用页面上的搜索框时,如果你重复搜索足够多次(例如,搜索数学然后删除s,重新输入s等),最终搜索数学将返回用于数学的结果。搜索设置为使用每个键盘执行搜索。
您可以在此页面上对其进行测试:https://www.oppia.org/
开发人员工具显示这是一个计时问题,其中先前请求的搜索结果在当前请求的搜索结果之前返回。
我看过几个问题,这两个问题似乎最相关:
我已尝试使用取消承诺选项,但到目前为止的测试表明,实际上没有任何请求被取消。在看另一个问题时,似乎辩护人应该取代其他选择,但我不确定。
我们正在使用v1.4,我们已经实现了一个400毫秒的去抖动器。我的问题是,解决方案只是让debouncer延迟更长时间,还是我需要进一步调查在发出新请求时取消之前的xhr请求?