【发布时间】:2014-09-15 20:42:00
【问题描述】:
我有一系列任务。他们有标题和标签。
function Task(taskTitle, taskType) {
this.title = taskTitle;
this.type = taskType;
}
$scope.tasks = [];
我最终声明了一堆不同类型的任务并将它们添加到数组中
在我的 html 中,我显示了一列卡片,按任务类型过滤:
<div ng-model="tasks">
<div class="card" ng-repeat="abc in tasks track by $index" ng-show="abc.type==0">
<p> {{ abc.title }} </p>
</div>
</div>
我想将此过滤视图中显示的第一张卡片绑定到其他一些div。我将处理一个收件箱,所以我会将这张卡片列表缩减到零。每次我“处理”一张卡片并将其从列表中删除时,我都需要刷新数据。
<div ng-model="firstCardInFilteredArray">
<h4>Title of first card:</h4>
<p> This should be the title of the first card! </p>
</div>
我的直觉是做这样的事情(在 javascript 中):
// pseudo-code!
$scope.inboxTasks = [];
for (i=0; i<tasks.length(); i++) {
if (tasks[i].type == 0) {
inboxTasks.append(tasks[i]);
}
}
并在页面更改时以某种方式再次运行该功能。但这似乎很荒谬,不符合 Angular 的精神。
在纯 javascript 或 Angular 中是否有一种简单的方法可以完成此条件绑定?
【问题讨论】:
-
ng-show="abc.type === 0 && $index > 0" 那么,
splice-ing 数组中的第一个值将导致绑定更新。跨度>
标签: javascript angularjs data-binding