我想将以下数据绑定到两个组中的下拉列表中。一个是文本文件,另一个是RDBMS类别。
1)文本文件
a)AWS
b)Azure
c)大型机
2)RDBMS
a)Oracle
b)Sybase
c)Teradata
d)MySQL
e)SQLServer
f)DB2
app
答案 0 :(得分:1)
您必须使用过滤器过滤器配合来处理它。通过对其进行ng-repeat来获取md-optgroup的组名称。减少选项数组对象。所以你的html编码看起来像
<md-select ng-model="selection" placeholder="Select an Option">
<md-optgroup label="{{currentGroup}}" ng-repeat="currentGroup in groupList">
<md-option ng-value="item" ng-repeat="item in items | filter: {group: currentGroup}">{{item.name}}</md-option>
</md-optgroup>
</md-select>
$scope.groupList = $scope.items.reduce(function(previous, current) {
if (previous.indexOf(current.group) === -1) {
previous.push(current.group);
}
//console.log(previous);
return previous;
}, []);
这是一个满足您要求的工作人员
http://plnkr.co/edit/ApuUq7V88ad6uplKjKSC?p=preview
现在这不像ng-options那样优雅,但效果很好。