我将搜索建议添加到我的搜索框中,如下所示...
var s = document.querySelector(".win-searchbox");
s.addEventListener("suggestionsrequested", function (e) {
e.detail.searchSuggestionCollection.appendQuerySuggestions(["one", "two", "three"]);
});但是当我运行应用程序并太快地使用搜索字段时,它在ui.js文件中抛出了两个异常中的一个,这两个异常都与在建议列表中添加和删除有关。我假设异步脚本正在尝试访问已经不存在的列表项(因为我正在快速导航...搜索、回车、键入新的搜索、回车等)。
我不知道如何调试它,也找不到解决它的方法。有没有空支票或者我需要放在什么地方?谢谢。
发布于 2014-01-30 02:05:32
问题是,当查询提交时,页面正在导航回自己,所以我搜索得太快了,它试图以某种方式进行导航重叠,并抛出了异常。修复方法是在提交查询时简单地替换ListView上的过滤器函数。显然,不管怎样,这都是更好的方法,性能也得到了极大的提高。
发布于 2014-01-31 12:06:29
如果我快速搜索以导航到搜索结果页面,则搜索框控件也会遇到类似的问题。我的建议是从40K的JSON对象中排名值,结果在100ms内返回。我创建了一个全局变量来保存搜索承诺,并在我的导航onnav事件中取消了它。
https://stackoverflow.com/questions/20508888
复制相似问题