我尝试了不同的方法来解决这些问题,它类似于How to implement recursive search filter in agngulrjs?
我尝试仅显示子节点的方法,但我想显示带有父数据的子节点
// Filter selected group
Treedirective.filter('treeFilter', function () {
return function (treeList, searchKey) {
var arr = [];
if (!searchKey) {
return treeList;
}
else {
var countdown = function (treeList) {
angular.forEach(treeList, function (value, key) {
var groupName = value.group.groupName.toLowerCase();
if (groupName.indexOf(searchKey.toLowerCase()) !== -1) {
arr.push(value);
}
if ('childLst' in value) {
return countdown(value.childLst);
}
});
}
countdown(treeList);
return arr;
}
}
});
我用过滤器方法得到了这个结果 http://jsfiddle.net/subhajitmaity/d8371L1x/1/ 但是我期望使用角度js过滤器得到以下结果 http://jsfiddle.net/devm33/yw3ty4kr/