1
我有这种情况,我在其中存储模板名称的变量。我注意到,如果你有例如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' :) – 2013-02-12 13:15:24
value.app [value.view] .create()创建一个Object/Class。如何创建一个字符串并将其传递给上下文(如:value)? – 2013-02-12 14:20:47