次の形式のノックアウト可観測配列があります。
this.controls = ko.observableArray([
{
name: 'Previous',
action: '$root.previous'
},
{
name: 'Next' ,
action: '$root.next'
},
{
name: 'Save',
action: '$root.save'
}
]);
私は私の見解で次のことをしたいと思います:
<div class="controls navigation">
<ul data-bind="foreach: $root.controls">
<li>
<span data-bind="text: name, click: action"></span>
</li>
</ul>
</div>
ビューは、本質的にボタンである 3 つの別個のスパンを作成します。私の目標は、ユーザーが特定のスパンをクリックするたびに、ビューモデルに対応するアクションが呼び出されるようにすることです。
ただし、これは機能しません。
配列をループして、アイテムごとに異なるクリック バインディング アクションを指定するにはどうすればよいですか?
各スパンを個別に簡単に書き出すことができます (この特定のケースでは、配列に項目が 3 つしかないため) が、配列を使用してこれをどのように達成できるか興味があります。