gpt4 book ai didi

javascript - 寻血猎犬重置本地数据

转载 作者:行者123 更新时间:2023-12-03 05:53:57 26 4
gpt4 key购买 nike

我正在使用 Bloodhound 并尝试重置本地选项。在我的网页上,我遇到一种情况,如果用户选择两个选项之一,建议数据将会更改。但当我设置本地数据时,我无法出现建议。下面是我如何创建寻血猎犬,并将其设置为使用名为“spray”的数组:

var dataSetBloodhound = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('name'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
local: spray
});

因此,如果用户选择喷雾,jQuery 会捕获它并尝试将喷雾数组设置为本地

 //If spray is picked  
if( checked == "Spray") {
// Clear the object
dataSetBloodhound.clear();
// Set the local 'data' to spray
dataSetBloodhound.local = spray;
// Reinit the object
dataSetBloodhound.initialize()
// Prints out the local data.(This prints out the data of spray)
console.log(dataSetBloodhound.local);
//etc }

如果用户选择肥料,则功能与上面相同,只是传递了肥料数组。如果我在列表中使用,我可以让它们工作,但我似乎无法交换 Bloodhound 的本地数据。然而,在我 initialize() 之后,我可以 console.log(dataSetBloodhound.local) 并且可以查看控制台中的元素,但如果我尝试从下拉列表中获取建议它不起作用。有什么想法吗?

最佳答案

我觉得你需要重新初始化,可以设置

if( checked == "Spray") {
// Clear the object
dataSetBloodhound.clear();
// Set the local 'data' to spray
dataSetBloodhound.local = spray;
// Reinit the object
dataSetBloodhound.initialize(true);
// Prints out the local data.(This prints out the data of spray)
console.log(dataSetBloodhound.local);

请查看文档https://github.com/twitter/typeahead.js/blob/master/doc/bloodhound.md

关于javascript - 寻血猎犬重置本地数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40024524/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com