次のような単純なループがありますng-repeat
:
<li ng-repeat='task in tasks'>
<p> {{task.name}}
<button ng-click="removeTask({{task.id}})">remove</button>
</li>
コントローラーに機能があります$scope.removeTask(taskID)
。
私の知る限り、Angular は最初にビューをレンダリングし、補間された値を{{task.id}}
数値に置き換え、次にクリック イベントでng-click
文字列を評価します。
この場合、ng-click
完全に予想どおりの結果になります。つまり、ng-click="removeTask(5)".
ただし、何も行われません。
もちろん、配列や DOMtask.id
から取得するコードを書くこともできます$tasks
が、これは Angular の方法ではないようです。
ng-click
では、ループ内のディレクティブに動的なコンテンツを追加するにはどうすればよいでしょうかng-repeat
?
ベストアンサー1
の代わりに
<button ng-click="removeTask({{task.id}})">remove</button>
これを行う:
<button ng-click="removeTask(task.id)">remove</button>
このフィドルをご覧ください: