0

モデルデータを摘みていない私は私のコントローラでは、このフィールドからのデータにアクセスしたいEmber.js - コントローラは

diaryItemLabel: DS.attr('string'), 

このフィールドを持つモデルを持っています。

Controller.js 

enter image description here

は私がdiaryItemLabelから得るものは何でもデータと'追加'を交換したいです。

this.get( 'model.diaryItemLabel')は使用できません。それは私にthis.get()が関数ではありません。 Ember.get( 'model'、 'diaryItemLabel')を試しました。それは私に空の文字列を与えます。

編集1:モデル.daryItemLabel変数が空の場合は、デフォルトで「追加」に設定されます。

誰かが私を適切な方向に導くことができますか?

おかげ

答えて

1

コントローラーのみmodelフックの後に呼び出されますsetupControllerフック後modelプロパティを取得します。

また、あなたは、私が「追加」にtemp.acceptテキストのデフォルトの設定を行う方法を私に伝えることができ、あなたの必要なオブジェクトを返しますコントローラでmodel.diaryItemLabelに依存

confirm:Ember.computed('model.diaryItemLabel',function(){ 
let temp = {}; 
temp.accept= { text: Ember.isEmpty(this.get('model.diaryItemLabel')) ? 'Add' : this.get('model.diaryItemLabel'), buttonClass: 'btn btn-primary'}; 
temp.reject = { text: 'cancel', buttonClass: 'btn btn-default'}; 
return temp; 
} 
+0

おかげで – user2798227

+0

を@kumkanillam計算されたプロパティを作成します。したがって、model.diaryItemLabelが空の場合は、それを 'Add'に設定してください。 – user2798227

+1

isEmptyチェックで答えが更新されました。 http://emberjs.com/api/classes/Ember.html#method_isEmpty – kumkanillam