[英]Storing initial model property value in Ember.js
可能是一個簡單的答案,但是作為一個初學者,例如,我想將余燼模型中的屬性存儲在控制器中,然后可以將其與新數據進行比較,我該怎么做呢?
為了提供更多上下文,我有一個輸入字段,其中使用model.user_input
檢索值,我希望能夠在首次加載視圖時將其存儲在某個地方,然后在值更改時進行比較。 我嘗試使用計算屬性,但是當模型更改時,它們也會更新。
在控制器的路由中,可以設置控制器,以便控制器保存初始值:
import Ember from 'ember'
export default Ember.Route.extend({
model() {
return {
'user_input': /* ... */
}
},
setupController(controller, model) {
this._super(...arguments)
controller.set('original_input', Ember.get(model, 'user_input'))
}
})
這樣,當值更改時,您可以簡單地通過Ember.get(this, 'original_input')
獲取原始值:
import Ember from 'ember'
export default Ember.Controller.extend({
'original_input': '',
isChanged: Ember.computed('model.user_input', function() {
return Ember.get(this, 'original_input') !== Ember.get(this, 'model.user_input')
})
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.