Ember.js 我的视图的属性可以';我救不了你
有人能帮我理解为什么Ember.js 我的视图的属性可以';我救不了你,ember.js,jquery-masonry,Ember.js,Jquery Masonry,有人能帮我理解为什么this.get('property_1')总是空的吗?我怎样才能修好它 谢谢 您上面的代码工作正常。是否可能您正试图从控制器检索属性_1视图属性?如果是这样,您需要在控制器上定义属性并从视图绑定到它。您可以设置jsbin吗?从你张贴的代码,它不是很清楚,不幸的是,我不能它将是许多代码。但在我的示例中,我减少了代码。当运行控制器.filter_参数更新方法刷新时。但是在两次运行之间,我的属性值不在jsfiddle()上保存代码也有同样的问题(我添加了console.log,它
this.get('property_1')
总是空的吗?我怎样才能修好它
谢谢 您上面的代码工作正常。是否可能您正试图从控制器检索
属性_1
视图属性?如果是这样,您需要在控制器上定义属性并从视图绑定到它。您可以设置jsbin吗?从你张贴的代码,它不是很清楚,不幸的是,我不能它将是许多代码。但在我的示例中,我减少了代码。当运行控制器.filter_参数
更新方法刷新
时。但是在两次运行之间,我的属性值不在jsfiddle()上保存代码也有同样的问题(我添加了console.log,它编写了null
),这似乎是我的误解。我必须做什么才能将属性中的值获取到refresh
函数中?该示例中的问题是,在设置属性之前,您正在记录属性。如果将跟踪移动到If
语句下方,则它应记录所需的值。
App.SomeView = Em.View.extend({
property_1: null,
didInsertElement: function() {
this.scheduleRefresh();
},
scheduleRefresh: function(){
Ember.run.scheduleOnce('afterRender', this, this.refresh);
}.observes('controller.filter_params'),
refresh: function(){
if (!this.get('property_1')) {
this.set('property_1', 'Hello');
}
}
});