/ / Как да презапишете Ember.View така, че всички шаблони да се търсят в едно пространство на имена - ember.js

Как да презапишете Ember.View така, че всички шаблони да се търсят под имена - ember.js

Използвам дръжки, за да се грижа за кормилотокомпилацията и приложението на релсите ще имат няколко Ember приложения (в зависимост от това на коя страница е включен потребителят). За да се справя по-добре с управлението на файловете, бих искал да организирам шаблоните под друга папка на всяко приложение. Не искам обаче да създавам отделен изглед за всеки шаблон, за да посоча името на шаблона. Има ли добър начин да се преодолее Ember.View за всяко приложение, така че винаги ще търси шаблони под определено пространство на имена?

Отговори:

2 за отговор № 1

Можете да презапишете резолвера на шаблона, за да постигнете това. Основната идея е да се уверите, че системата за изграждане като щит-щифтове съставя шаблони под формата,

Ember.TEMPLATES["namespace/foo/bar"] = ...

След това можете да презапишете резолвера на шаблона, за да настроите това пространство на име върху името на шаблона.

App = Ember.Application.create({
templateNamespace: "initech",

resolver: Ember.DefaultResolver.extend({
resolveTemplate: function(parsedName) {
parsedName.fullNameWithoutType = App.templateNamespace + "/" + parsedName.fullNameWithoutType;
parsedName.name = App.templateNamespace + "/" + parsedName.name;

return this._super(parsedName);
}
})

});

Тук е jsbin пример. Шаблоните са вградени в примера, но идват от initech директория във вашия случай.