У меня есть такая ситуация, когда у меня есть имя шаблона, хранящееся в переменной. Я заметил, что если у вас есть, напримерEmberJs: визуализировать шаблон внутри Handlebars-helper
var config = { view: "PeopleView", .... } ;
, что вы не можете сделать
{{view App[config.view]}}
Если это возможно, я по-прежнему заинтересован в решении! Во всяком случае, я решил исправить это с помощником Рули:
{{setVariableView config}}
...
Ember.Handlebars.registerBoundHelper('setVariableView', function(value, options) {
return App[value.view].create(value) ; // <-- this doesn't work :)
}) ;
На данный момент я не знаю, как назвать скомпилированный PeopleView? Любые предложения?
Приветствия
Вы можете определить конфигурационный объект как 'App.config = Ember.Object.create ({app: App, view: 'MyView'});' и в помощнике: var view = value.app [value.view ] .create(); '. Таким образом, вам не нужно использовать 'eval' :) –
value.app [value.view] .create() создает объект/класс. Как создать строку и передать ей контекст (например: значение)? –