我有一個名爲Comment的嵌入對象,在遊戲中。每場比賽可以有很多評論。Emberjs - 如何在保存後重置組件上的字段?
當用戶(稱爲父母)查看遊戲頁面時,他們可以發表評論。
我遇到的問題是,我似乎無法在註釋保存後將註釋字段的主體重置爲空。
這是組件:
MyApp.AddCommentComponent = Ember.Component.extend({
body: '',
actions: {
addComment: function() {
var comment, failure, success;
if (!!this.get('body').trim()) {
comment = this.store.createRecord('comment', {
body: this.get('body'),
game: this.get('game'),
parent_id: this.get('parent_id'),
parent_name: this.get('parent_name')
});
success = (function() {
this.set('body', '');
});
failure = (function() {
return console.log("Failed to save comment");
});
return comment.save().then(success, failure);
}
}
}
});
的錯誤是在「this.set」線 - this.set不是一個函數
所有我找到的例子都是這樣做此在控制器中或通過在路由更改時創建新記錄(但在我的示例中,路由不會更改,因爲它只是將另一個嵌入對象添加到現有頁面)。
其解決這裏提供:http://stackoverflow.com/questions/35534260/ember-2-3-record-is-updated-on-save-but-燼,仍然說,這 - 它失敗的開/ 35537284#3 5537284也會爲你工作。但簡單地讓我拋出其他選項: (1)成功=功能(){ this.set('body',''); } .bind(this); (2)success()=> { this.set('body',''); }; ()=> {this.set('body','');})。catch(()=> {// log err;}); –