在Ember 2.7

时间:2016-09-15 07:56:14

标签: ember.js htmlbars

在我们的应用程序中,我们通过使用把手模板调用Ember.HTMLBars.compile在运行时使用模板编译器。示例代码:

let myTemplate = `{{foo}}`;
application.register(`template:my-template`, Ember.HTMLBars.compile(myTemplate));

我尝试从Ember 2.6升级到Ember 2.7但是如果我尝试编译模板,我在开发者控制台中会出现以下错误:

  

_ember.default.HTMLBars.compile不是函数()

在文档中,我找不到任何关于从HTMLBars编译器中删除的编译方法的信息。

如何在我的应用程序中运行时仍然使用/启用HTMLBars编译器?

3 个答案:

答案 0 :(得分:1)

ember-template-compiler.js

中导入原始ember-cli-build.js
app.import('bower_components/ember/ember-template-compiler.js');

答案 1 :(得分:1)

我需要在运行时编译模板 并使用https://www.npmjs.com/package/ember-cli-handlebars-inline-precompile。 试试这个:

import hbs from 'htmlbars-inline-precompile';
application.register(`template:my-template`, hbs`{{foo}}`);

答案 2 :(得分:0)

由于提供的信息较少,请先尝试检查错误来源。

可能是一个库,你需要打开你的开发人员控制台[比如说chrome],然后点击错误,它将引导你到达错误的起源,这样你就可以调整或纠正代码...