首页 > 解决方案 > Crossfilter1.4.6 过滤器喜欢用数组维度时不起作用,过滤器功能后仍然可以得到数组为空的行

问题描述

当我测试 Part1 代码时,总是在 filter 函数之后得到空行的行。第1部分:

var rows = [{id: 1, links: ["vv"]}, {id: 2, links: []}];
var ndx = crossfilter(rows);
var dimLinks = ndx.dimension(r => r.links, true)
dimLinks.filter("vv");
console.log('links filter applied:', dimLinks.top(Infinity));//the result return [{id: 1, links: ["vv"]}, {id: 2, links: []}], not [{id: 1, links: ["vv"]}]

但是当我测试 Part2 代码时,我在 filter 函数后不会得到空行的行。第2部分:

var rows = [{id: 1, links: ["vv", "ss"]}, {id: 2, links: []}];
var ndx = crossfilter(rows);
var dimLinks = ndx.dimension(r => r.links, true)
dimLinks.filter("vv");
console.log('links filter applied:', dimLinks.top(Infinity));//the result return [{id: 1, links: ["vv", "ss"]}]

看起来这是由行的数组数据引起的。使用时是否有不正确的调用功能?以及如何以及如何过滤像 Part1 这样的情况下的空行?感谢帮助。

标签: javascriptcrossfilter

解决方案


推荐阅读