oot*_*vak 9 ember.js ember-rails
我有一个Rails应用程序,它被命名为三个部分(几乎3个共享模型的应用程序).我希望每个命名空间部分都有自己的Ember应用程序.这些应用程序永远不会加载到相同的布局中,因此不必彼此了解任何内容.实际上,我希望尽可能将代码保持独立,以便最终真正分离应用程序.
我试图使用ember-rails gem来做到这一点.
基本上它就像这个问题: 如何使用ember-rails gem为我的HandlebarsJS模板指定替代目录?
答案有效,但我很确定使用templates_root将我限制在一个名称空间.所以我不能拥有admin.js和admin/templates命名空间以及customer.js和customer/templates命名空间.
那么有谁知道ember-rails是否会支持多个命名空间的Ember应用程序并因此呈现多个模板根?
谢谢!
Mik*_*tti 12
如此处所示,您可以通过向每个应用添加自定义解析器来拥有命名空间模板.
App1 = Ember.Application.create({
Resolver: Ember.DefaultResolver.extend({
resolveTemplate: function(parsedName) {
parsedName.fullNameWithoutType = "app1/" + parsedName.fullNameWithoutType;
return this._super(parsedName);
}
})
});
App2 = Ember.Application.create({
Resolver: Ember.DefaultResolver.extend({
resolveTemplate: function(parsedName) {
parsedName.fullNameWithoutType = "app2/" + parsedName.fullNameWithoutType;
return this._super(parsedName);
}
})
});
App3 = Ember.Application.create({
Resolver: Ember.DefaultResolver.extend({
resolveTemplate: function(parsedName) {
parsedName.fullNameWithoutType = "app3/" + parsedName.fullNameWithoutType;
return this._super(parsedName);
}
})
});
Run Code Online (Sandbox Code Playgroud)