我创建了一个模板及其控制器,我在控制器中设置了一个变量(值),但是当我尝试访问模板时发生了变化。 我的控制器是:
App.AboutController = Ember.Controller.extend({
info:null,
init: function() {
console.log("yes i am in About controller");
info = post["about"];
},
actions: {
getdata1:function(data){
console.log("get data",data);
info = post[data];
console.log(info);
}
}
和模板是:
<script type="text/x-handlebars" id="about" data-template-name="about">
<div class="col-xs-6 middlesubBody">
{{info}}
</div>
<div class="col-xs-3 rightsubBody">
<div id="column">
<div
{{action "getdata1" "about"}}> About</div>
<div>
</div>
</script>
MY Action工作正常但信息值未设置为template.i想要动态绑定。我想我错了,但我不知道问题出在哪里。
答案 0 :(得分:1)
您需要使用this.set('info', value)
代替info = value
。此外,您多次使用post
,但未在任何地方定义。我必须假设你已经在某处定义了它:
App.AboutController = Ember.Controller.extend({
info: null,
init: function() {
console.log("yes i am in About controller");
this.set('info', post["about"]);
this._super(); // you need this to avoid unexpected behavior
},
actions: {
getdata1: function(data) {
console.log("get data",data);
this.set('info', post[data]);
console.log(this.get('info'));
}
}
});