gpt4 book ai didi

javascript - Angularjs:对象数组中的 ng-repeat 过滤器对象

转载 作者:搜寻专家 更新时间:2023-11-01 05:03:15 25 4
gpt4 key购买 nike

我创建了一个 plunker,它解释了我想要实现的目标。 http://plnkr.co/edit/XAghimH20qwxQGjO42gP?p=preview

我有这个对象数组 $scope.menus

    $scope.menus = [
{
name: 'Access',
submenu: [
{ name: 'User List'},
]
},
{
name: 'Organization',
submenu: [
{ name: 'City List'},
{ name: 'State List'},
{ name: 'Country List'},
]
},
{
name: 'Upload Logs',
submenu: [
{ name: 'Inventory Uploads'},
]
},
{
name: 'Bulk Logs',
submenu: [
{ name: 'Bulk Renewals'},
]
},
];

对于搜索到的外部菜单,例如AccessOrganization,只返回搜索到的项目。

但是当搜索内部菜单时,例如像 City List,结果我得到所有其他对象也包括 City List。我只希望得到 City List

我观察到对于嵌套的对象数组,过滤器不起作用。

我可能是错的。请指导我学习新东西。

更新@Vivek 解决方案有效。但现在我面临另一个问题。我在现有数组中添加了一些其他数组。
当我在搜索字段中键入 Bulkupload 时,会出现子菜单。但只要我输入第二个词(例如 Bulk logsupload logs),子菜单就会消失。

如果打第一个字的时候出现,为什么打第二个字的时候就没有了,为什么会这样?

更新感谢大家的宝贵时间和回复。

最佳答案

  <input type="text" placeholder="Search text" ng-model="menuSearch">
<ul>
<li ng-repeat="menu in menus | filter : menuSearch">
<span href="#">{{menu.name}}</span>
<ul>
<li ng-repeat="submenu in menu.submenu | filter : menuSearch">
<a href="#">{{submenu.name}}</a>
</li>
</ul>
</li>
</ul>

</div>

关于javascript - Angularjs:对象数组中的 ng-repeat 过滤器对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52689913/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com