ember.js - Ember 创建对象时如何观察火(观察已在模型中设置)

标签 ember.js observers

在 Controller 数组中创建对象时,我无法触发观察函数

我的代码:

型号

App.Meeting = Em.Object.extend({
    id: null,
    name: null,
    type: null,
    proposes: null
 });
App.Meeting.reopen({
    proposedChanged: function() {
       //some do
    }.observes('proposes')
});

Controller

App.meetingsController = Ember.ArrayController.create({
    content: [],
    loadList: function(){
        var me = this;
        $.getJSON(url,function(data){

            if(data.status == 0){
                $(data.meetings).each(function(index,value){
                    var m = App.Meeting.create(value)
                    me.pushObject(m);    
                });

            }else{
                alert('Error loading content');
            }               
        });
    },

});

App.meetingsController.loadList();

当我运行应用程序时, Controller 已获取 JSON 数据并使用该数据创建了 App.Meeting,但观察者未触发

最佳答案

当我创建一个 jsbin 来与 @Darshan Sawardekar 一起玩时,它是正确的,所以现在你必须回答才能玩:)

重要代码:

App.meetingsController = Ember.ArrayController.create({
  content: [],
  loadList: function(){
    var me = this;
    $.getJSON(url, function(data){
      if(data.status == 0){
        $(data.meetings).each(function(index, value){
          var m = App.Meeting.create();
          m.set('id', value.id);
          m.set('name', value.name);
          m.set('type', value.type);
          m.set('proposes', value.proposes);

          me.pushObject(m);
        });
      } else {
         alert('Error loading content');
      }               
    });
  }
});

希望有帮助。

编辑

请参阅此处了解工作 jsbin这显示了这个概念。

关于ember.js - Ember 创建对象时如何观察火(观察已在模型中设置),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17719896/

相关文章:

javascript - 在 Ember Power Select 中检测滚动

javascript - polymer 1.x : Observers

ios - 当数据改变时如何调用函数?

javascript - Ember .transitionToRoute 和 currentModel 问题

javascript - ember.js - 支持数字字段

javascript - Ember.js 动态段不起作用

javascript - 如何使用谷歌地图重新渲染 Ember 组件

objective-c - 状态变化监控

ios - NSNotification 被解雇了不止一次?

ios - 添加观察在 Swift 4 中不起作用