【发布时间】:2014-08-20 07:07:41
【问题描述】:
我想了解如何通过 ng-repeat 指令在 AngularDart 中执行链式过滤器/格式化程序。
谁能以简洁明了的方式解释它的工作原理?
参考教程没有提供足够的细节来完全掌握 AngularDart 链式过滤器的执行工作原理。以下是我通过查看文档和查看 AngularDart 源代码部分的理解。
参考链接: http://runnable.com/UvL5t92j1pVCAAAQ/angular-dart-tutorial-chapter-05 github原帖:https://github.com/angular/angular.dart.tutorial/issues/74
** 用于评估 ng-repeat 中的过滤器的假定执行链**
格式化程序/过滤器可以访问中继器内的列表,例如 ng-repeat
recipeList 是通过 ng-repeat 的作用域提供给 cf
cf=categoryfilter(list, map) -->分类列表
fltr=filter (list, nameFilterString)--> filteredList, name
ordBy=orderBy(list, name)--> orderdList
- 首先获取用户选择的类别,将列表传递给下一个过滤器
- 根据所选类别过滤输入的文本
- 按照名称默认升序对上述2中过滤的列表进行排序
- 为列表中的每个项目创建一个 html 跨度
Html View(从右到左:1.、2.、3.、4.如下所示):
) >
我想知道 angularDart 中继器 (ng-repeat) 中的列表 (recipeList) 如何将列表传递给每个连续的链式过滤器,并确认过滤器的顺序是否重要(我相信它们确实如此)。我上面的理解正确吗?
< li class="pointer"
ng-repeat="recipe in ctrl.recipes | orderBy:'name' | filter:{name:ctrl.nameFilterString} | categoryfilter:ctrl.categoryFilterMap" >
.... repeated dom elements omitted here for clarity
< /li >
【问题讨论】:
标签: filter dart angular-dart ng-repeat data-formatters