因此,我已将 Ember 视图设置为使用外部模板文件 (.handlebars)。一般机制是这样的。我正在使用 requirejs 模块格式:
define([
"ember",
"text!templates/drawer-menu.handlebars"
],
function(Ember, drawerMenu) {
var DrawerMenu = Ember.View.extend({
template: Ember.Handlebars.compile(drawerMenu),
});
return DrawerMenu;
});
现在,我已经设置了我的项目,因此我可以使用GruntJS来处理诸如捆绑、uglify、缩小和打包所有 css 和 js 文件之类的事情。
我还想预编译我的模板。所以我设置了grunt-ember-templates,它很好地将我所有的模板打包到一个 js 文件中。生成的 js 文件如下所示:
define(["ember"], function(Ember){
Ember.TEMPLATES["drawer-menu"] = Ember.Handlebars.template(
function anonymous(Handlebars,depth0,helpers,partials,data) {
....
return buffer;
});
);
我不明白,我现在应该使用Ember.TEMPLATES["drawer-menu"]
而不是Ember.Handlebars.compile(drawerMenu)
在需要模板数据的时候使用。
我的问题是我应该如何设置开发工作流程?我是说
我是否应该更改我的代码以始终使用预编译的模板,在这种情况下,我也必须始终在我的开发环境中进行预编译。
如果我不执行上述操作,那么每次为生产构建时,我都必须手动编辑所有视图文件以使用预编译模板。容易出错的东西。
有没有自动设置的机制?