Tôi có một vòng lặp đơn giản ng-repeatnhư thế này:
<li ng-repeat='task in tasks'>
<p> {{task.name}}
<button ng-click="removeTask({{task.id}})">remove</button>
</li>
Có một chức năng trong bộ điều khiển $scope.removeTask(taskID).
Theo như tôi biết thì Angular trước tiên sẽ hiển thị chế độ xem và thay thế nội suy {{task.id}}bằng một số, và sau đó, khi nhấp vào sự kiện, sẽ đánh giá ng-clickchuỗi.
Trong trường hợp này ng-clicknhận được hoàn toàn những gì được mong đợi, tức là: ng-click="removeTask(5)".Tuy nhiên ... nó không làm gì cả.
Tất nhiên tôi có thể viết mã để lấy task.idtừ $tasksmảng hoặc thậm chí DOM, nhưng điều này có vẻ không giống như cách Angular.
Vì vậy, làm thế nào người ta có thể thêm nội dung động vào ng-clickchỉ thị bên trong một ng-repeatvòng lặp?
ng-clickbiểu thức của bạn không sử dụng dấu ngoặc, tức làng-click="taskData.currentTaskId = task.id"