Javascript 带有EmberFire对象的Ember.js-如何与数组属性一起使用?

Javascript 带有EmberFire对象的Ember.js-如何与数组属性一起使用?,javascript,ember.js,firebase,emberfire,Javascript,Ember.js,Firebase,Emberfire,我读了很多书,仍然不能自己解决。我有一个Ember路线,带有azEmberFire模型 App.NewRoute = Ember.Route.extend({ model: function() { return EmberFire.Object.create({ ref: window.ref }); }, setupController: function(controller, model) { controller.set('model', mod

我读了很多书,仍然不能自己解决。我有一个
Ember路线
,带有az
EmberFire模型

App.NewRoute = Ember.Route.extend({
model: function() {
    return EmberFire.Object.create({
        ref: window.ref
    });
},
setupController: function(controller, model) {
    controller.set('model', model);
})
之后,例如,我在控制器中:

App.NewController = Ember.Controller.extend({
actions: {
    save: function() {
        this.get('model').set('questions', Ember.A([]));
        this.get('model').get('questions').pushObject(Ember.Object.create({title: 'foo'}));
        this.get('model').get('questions').get('lastObject').set('title', 'bar');

        this.get('model').set('title', 'foobar');
    }
}
});
调用保存操作时,仅在fire base上更改标题


有人能解释一下我如何改变阵列吗

我会将您的模型从
EmberFire.Object.create
更改为
EmberFire.Array.create
。而不是将数组作为属性的对象
EmberFire
是一个简单的包装器,它将ember对象连接到
firebase
对象。我认为它不适用于对象内部的嵌套数组,因为我刚刚开始使用库

如果需要为对象中的该数组标识属性,请创建第二个对象
EmberFire.object
,并添加引用该
EmberFire.array
firebase
对象的属性

因此,您的保存操作看起来更像这样:

var array = this.get('model');  
array.pushObject(Ember.Object.create({title: 'foo'}));  
array.get('lastObject').set('title', 'bar');