對不起,如果這個問題太天真了,但我在Ember中渲染視圖時感到困惑不已。如何在不刷新頁面的情況下在EmberJS 1.13.8中渲染視圖?
我有一個'人'路線。我能夠對它進行CRUD操作。
router.js
this.route('person', function() {
this.route('index', { path: '' });
});
控制器/人/ index.js
actions: {
createPerson: function() {
var person = this.get('store').createRecord('person');
this.set('person', person);
this.set('editPersonPane', true);
},
editPerson: function(person) {
this.set('person', person);
this.set('editPersonPane', true);
},
closeEditPerson: function() {
this.get('person').rollback();
this.set('editPersonPane', false);
},
savePerson: function(person) {
var _this = this;
person.save().then(function() {
_this.set('editPersonPane', false);
Ember.get(_this, 'flashMessages').success('person.flash.personUpdateSuccessful');
}, function() {
Ember.get(_this, 'flashMessages').danger('apiFailure');
});
},
deletePerson: function(person) {
var _this = this;
person.destroyRecord().then(function() {
_this.set('editPersonPane', false);
Ember.get(_this, 'flashMessages').success('person.flash.personDeleteSuccessful');
}, function() {
Ember.get(_this, 'flashMessages').danger('apiFailure');
});
}
}
我想現在要做的是,當我想創建一個新的人,一個幻燈片的形式來創建它。填寫完表格後,我希望立即更新人員的列表視圖,而無需刷新頁面。現在,我已經能夠添加表單,並且當我添加一個新的人員時,我得到了一個成功的Flash消息,但它沒有立即在視圖中更新。我必須刷新頁面。
它可能不得不對觀察者做些什麼,但我仍然不確定如何。
'person.save(),然後(函數(savedPerson){savedPerson.reload(); //休息您的代碼});' –