首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >类型错误:即使在使用jQuery.noConflict时也不是函数

问类型错误:即使在使用jQuery.noConflict时也不是函数
EN

Stack Overflow用户
提问于 2014-02-18 08:58:37
回答 2查看 2K关注 0票数 2

我一直在为Handlebars.compile()调用获取TypeError。我试着按照其他一些帖子中的建议将jQuery.noConflict()添加到不同的地方,但没有成功。

代码语言:javascript
复制
TypeError: 'undefined' is not a function (evaluating 'Handlebars.compile('test')')

代码是:

代码语言:javascript
复制
$('.location-typeahead').typeahead(
{
  name: 'states',
  displayKey: 'value',
  source: states(),
  templates: {
    header: '<h4 class="location-typeahead-header">Title</h4>',
    suggestion: Handlebars.compile('test')
  }
}
);

如果我删除整个"suggestion“模板参数,我JS就能正常工作。

EN

回答 2

Stack Overflow用户

发布于 2014-02-19 12:16:41

您可能已经包含了Handlebar的运行时版本。如果你想在客户端编译模板,你需要包含完整的版本。

或者,您可以预编译模板--然后您只需要运行时。

票数 5
EN

Stack Overflow用户

发布于 2014-09-20 00:41:21

不要试图做一个简单的模板而折断你的脖子。所有的文档都指向使用Handlebar模板--但在根级别,模板的“suggestion”属性必须是一个接受数据对象和环境的函数,然后返回格式化的字符串标记。

参见下面的有效示例,对格式/布局进行一些细微的调整-只要你在数据源中返回所需的数据,这对于更高级的应该是有效的。

代码语言:javascript
复制
 //where data is the single data object returned
 //and environment is the typeahead context
 suggestion: function(data, env) {
    return "<p><strong>" + data.owner_name + "</strong> – " + data.name + "</p>";
 }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21842336

复制
相关文章

相似问题

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