0
すべてのテストを2回、ドキュメントを3回読みましたが、Ember.Selectの使い方をよく理解できていません。Ember.Selectデフォルト値が正しく設定されていません
モデルオブジェクト(goal_type)に文字列値があり、これを選択肢に双方向でバインドし、その選択肢のデフォルトをgoal_typeフィールドの開始値にしたいとします。いくつかの質問:
- モデルの初期goal_typeを受け入れることができません。
- これはすべて複雑すぎるようです。元のコントローラの状態を変更するためにオブザーバを設定するより簡単な方法が必要です。
ヘルプ - 私はこれを理解しようと夢中になります。
Azul.goalController = Ember.Object.create({ loadGoal: function(data) { this.set('content', Azul.store.loadAll(Azul.Goal, data)); }, newGoal: function() { goal = Azul.store.createRecord(Azul.Goal, {goal_type: "type2"}); this.set('content', goal); Azul.selectedGoalTypeController.selectGoalType(goal.get('goal_type')); } }); Azul.selectedGoalTypeController = Ember.Object.create({ selectedGoalType: null, selectedGoalTypeChanged: function() { Azul.goalController.content.set('goal_type', this.selectedGoalType.value); }.observes('selectedGoalType'), selectGoalType: function(goal_type) { Azul.goalTypesController.content.forEach(function(item, index, self) { if (goal_type == item.value) { self.set('selectedGoalType', item); } }); } }); Azul.goalTypesController = Ember.ArrayController.create({ content: [ {value: 'type1', label: 'Type 1'}, {value: 'type2', label: 'Type 2'} ] });
サンプルを理解していますが、モデルのフィールドを値にバインドするための推奨方法は何ですか?選択し、モデルのフィールドの値を選択のデフォルトに設定します。私はまだそれを行うための方法を理解しているとは思っていません。 – outside2344
私はフィドルを更新し、それがもう少し役立つかどうかを確認します... – Luan