0

これが私の最後のノックアウト質問です:)

ifステートメントを設定していて、ページが初めて読み込まれたときに機能していますが、ビューモデルに新しいアイテムを追加しようとすると、ifステートメントが実行されません。

私のJSフィドル

ビューモデルを最初に初期化したときに機能するのに、他のアイテムを追加したときに機能しないのはなぜですか。エラーは発生しません

4

1 に答える 1

0

if式の一部としてqtypeで角かっこを使用する必要があります。つまり、次のようになります。

<!-- ko if: qtype() === 'Rating' -->

また、arrayMapイテレータにQuestionビューモデルのインスタンスを返させたくないですか?すなわち:

self.questions = ko.observableArray(ko.utils.arrayMap(questions, function(question) {
    return new Question(question.question, question.qtype);
}));

更新されたフィドルは次のとおりです。

http://jsfiddle.net/wR6mb/15/

于 2012-08-05T10:55:56.810 に答える