首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >twitter-typeahead:猎犬预取不能识别准备或转换函数吗?

twitter-typeahead:猎犬预取不能识别准备或转换函数吗?
EN

Stack Overflow用户
提问于 2018-02-01 04:50:58
回答 1查看 815关注 0票数 0

使用: typeahead.js 0.11.1 (typeaheadbundle.js)

我正在尝试使用探犬来预取多个结果组,并根据结果组选择返回它们。无需分组(只需提供URL),代码就可以完美地工作。当我尝试通过使用prepare进行预取来添加分组时,没有调用prepare函数。

有效的代码(仅限URL预取):

代码语言:javascript
复制
  var suggestionUniverse = new Bloodhound({
    initialize: false,
    datumTokenizer: Bloodhound.tokenizers.obj.whitespace('Value'),
    queryTokenizer: Bloodhound.tokenizers.whitespace,
    prefetch:'./suggestlist.json'
});
var promise = suggestionUniverse.initialize(true);//initialize and clear any existing cache.
promise.fail(function () { console.log('err, something went wrong :('); });

不起作用的代码(使用prepare预取):

代码语言:javascript
复制
    var suggestionUniverse= new Bloodhound({
    initialize: false,
    datumTokenizer: Bloodhound.tokenizers.obj.whitespace('Value'),
    queryTokenizer: Bloodhound.tokenizers.whitespace,
    prefetch:{
        url: './suggestlist.json',
        prepare: function (settings) {
            console.log("Called prepare");
            return settings; //Optional: Add filter for batchid?
        },
        transform: function(response) {
            console.log("Called transform");
            return response;//add batch filters needed to reduce response.
        }
    }
});
var promise = suggestionUniverse.initialize(true);//initialize and clear any existing cache.
promise.fail(function () { console.log('err, something went wrong :('); });

我在控制台中看不到任何消息,无论是在初始化期间(好,没有错误),还是在建议显示期间(不好,没有调用准备或转换)。我是不是漏掉了什么?

EN

回答 1

Stack Overflow用户

发布于 2018-02-08 19:53:56

检查您的调试器工具,查看是否正在向“./suggestlist.json”发出请求,以及请求是否成功。我遇到了类似的问题,并且意识到我的预取被缓存了,所以永远不会调用准备和转换函数。尝试将'cache: false‘添加到预取设置(如果需要,如果它开始工作,则将其删除)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48551196

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档