0

私は Ractive.JS バインディングを使用しています:

var alertsBinding = new Ractive({
    el: '.alerts',
    template: alertsTemplate,
    data: {
        alerts: alerts,
        selectedAlertID: null
    }
});

テンプレートはテンプレート式を使用して、項目が現在選択されている項目であるかどうかを検出し、それに応じてクラスを追加します。

<div class="alert {{ id === selectedAlertID ? 'selected' }}">
  ...
</div>

アイテムが選択されたら、次を実行します。

alertsBinding.set({selectedAlertID: selectedAlert.id});

設定後、条件が真であるべき場合でも、条件が常に偽であることがわかります。また、以下を追加して確認しました。

id{{ id}} selected{{ selectedAlertID}}

アイテムが実際に選択されていることを確認するためのアラート内。

ここに画像の説明を入力

それでも条件は false であり、クラスは設定されていません。

テンプレート式の等価性をテストするにはどうすればよいですか?

4

1 に答える 1