以角度交叉引用两个数据集
Cross-reference two datasets in angular
给定两组对象,称它们为apples和orange。apples包含一个ID和一个名称。桔子包含一个appleID和一个整数。
苹果被映射到一个html表,每行都有名称。
名称旁边是一个复选框,当桔子集合中存在该苹果ID时,该复选框将被选中。如果选中该复选框,则还会显示一个绑定到桔子整数的文本框/下拉列表。
我真正需要帮助的一件事是,如何为模板中的每一行获取橙色对象,以及如何在选中/取消选中复选框时最好地添加和删除橙色。
您可以将桔子集映射到如下结构:
oranges = {
'abc': 5,
'abd': 20
}
其中"abc"answers"abd"是appleId,5和20是相应的整数。
通过这种方式,如果存在相应的橙色条目,那么你可以很容易地从你的ng repeat-over-apples中评估和访问,如果存在,那么对应的数字是多少。如果您想删除一个桔子条目,只需将其设置为未定义,或者更好地使用"delete"命令将其删除。
只需做一些类似的事情
<div ng-repeat="apple in apples">
{{ apple.name }} :
<div ng-if="oranges[apple.id] !== undefined">
<input type="checkbox" ng-change="onCheckboxChange(oranges[apple.id].number)" ng-model="oranges[apple.id].number" />
</div>
</div>
我假设您从不同的来源导入/加载苹果和橙子,但这不是将它们分开的理由,对吧?您可以简单地通过向apples对象添加一个桔子整数(如果存在)来扩展它,而不是让两个对象具有一个reduntant属性。
所以不是:
var apples = [{id, name}];
var oranges = [{appleID, int}];
简单使用(您可能需要先处理原始数据):
var apples = [{id, name, int}];
相关文章:
- 具有多个数据集的分组散点图D3
- 如何外部联接两个数据集(基于多个主键)
- 折线图:对齐多个数据集的x轴(时间戳)
- CRM 2011+问题与javascript中的两个选项集
- 对多个数据集多次使用单个把手功能
- Twitter Typeahead.js库是否仅限于6个数据集
- jQuery 选择器,用于通过比较元素的两个数据属性来选择元素
- 点的颜色在 D3.js散点图上的 10 个数据集后重复
- D3 - 使笔划宽度与第二个数据集协变
- 以角度交叉引用两个数据集
- 使用Node/JS合并两个数据集
- Typeahead.js-使用一个远程源的多个数据集
- 将多个数据集返回到Node.js视图
- 在Charts.Js条形图中加载800+个数据集时,Firefox没有响应
- 暂停大量AJAX调用,多个数据集
- 专注于“;行“;其中2行表示1个数据集
- Jquery mobile -如何为两个数据集使用listview数据过滤器
- 使用两个数据器拖放图像
- 使用JavaScript从SharePoint组合和排序两个数据集合
- 如何加载CSV和JSON文件,并使用d3将两个数据集组合到一个数据集.Json, d3.csv和d3.zip