[英]Access ember js object from template
我有一個余燼控制器如下
App.IndexController = Ember.Controller.extend({
edwin:{
uno:'hola',
dos:'hola dos',
tres:'hola tres'
}
});
我的模板需要屬性edwin的值,如果我將屬性作為
<script type="text/x-handlebars" data-template-name="index">
{{edwin.dos}}
</script>
它工作正常,但是當我嘗試時,我需要從其他變量中選擇對象元素
<script type="text/x-handlebars" data-template-name="index">
{{edwin['dos']}}
</script>
要么
<script type="text/x-handlebars" data-template-name="index">
{{edwin[myvar]}}
</script>
我無法顯示這是我的jsbin的值
http://emberjs.jsbin.com/xupuse/1/edit
有什么建議么
您將最接近它,基於另一個屬性在控制器中創建一些動態屬性。 真正的問題是,如果其他屬性發生更改,則ember將不知道如何對其進行更新。 在下面的示例中,如果edwin.xxxx更改,則計算的屬性將不知道*,而如果dynamo更改,則將知道(因為正在監視它)。
App.IndexController = Ember.Controller.extend({
edwin:{
uno:'hola',
dos:'hola dos',
tres:'hola tres'
},
dynamo: 'uno',
dynamoProperty: function(){
return this.get('edwin.' + this.get('dynamo'));
}.property('dynamo')
});
http://emberjs.jsbin.com/beziq/1/edit
*我有點像躺在這里,您可以在edwin上指定每個屬性,並且無論它是否應用於dynamoProperty la
dynamoProperty: function(){
return this.get('edwin.' + this.get('dynamo'));
}.property('dynamo', 'edwin.{uno,dos,tres}')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.