【发布时间】:2016-02-14 01:18:32
【问题描述】:
我想获得值转换器的结果,该值转换器在我的视图中过滤数组以显示找到的结果数。
<div repeat.for="d of documents|docfilter:query:categories">
<doc-template d.bind="d"></doc-template>
</div>
我既不想将此逻辑移动到我的控制器(以保持其清洁),也不想添加拐杖,例如从值控制器返回一些数据。
我想要什么:
所以,基本上我想要一些像角度优惠的东西:
如图所示here:
ng-repeat="item in filteredItems = (items | filter:keyword)"
或here:ng-repeat="item in items | filter:keyword as filteredItems"
我得到了什么:
不幸的是,在奥里利亚:
d of filteredDocuments = documents|docfilter:query:categories
实际上是指d of filteredDocuments = 文档 |docfilter:query:categories,如果我添加括号或as,它将无法运行(因解析器错误而失败)。
所以,
有没有一种干净的方式将数据从数据过滤器中取出视图?
最好的问候,亚历山大
UPD 1:当我谈到从值控制器返回一些数据时,我的意思是:
export class DocfilterValueConverter {
toView(docs, query, categories, objectToPassCount) {
...
objectToPassCount.count = result.length;
...
});
});
UPD 2. 实际上,我错了:d of filteredDocuments = 文档 |docfilter:query:categories。它不能解决问题,但这段代码的作用是:
1) filteredDocuments = documents |docfilter:query:categories 在初始化时
2) d of filteredDocuments 这是对最开始的数组过滤的重复
【问题讨论】:
-
您是否正在寻找有关如何实施
DocFilterValueConverter的建议?我不清楚这个问题 -
没关系-我想我明白了-您想要对过滤后的文档数组的引用。
-
@JeremyDanyow 是的,实际上我只是在寻找一些优雅的方式来做到这一点,而不是像 UPD1 中描述的那样丑陋:)
标签: javascript aurelia