使用大数据过滤列表-VueJs

时间:2019-01-22 11:11:54

标签: javascript vue.js vuex

我使用https://github.com/freearhey/vue2-filters中的filterBy过滤器。 该列表大约有5,000条记录。例如,当我按下一个字母时,“ a”过滤大约需要10秒钟。当我输入一个较长的短语时,大约需要一秒钟。有什么方法可以加快对这么大列表的单个字母的过滤吗?

1 个答案:

答案 0 :(得分:0)

我认为问题不仅仅在于列表过滤,而且正如Evaldo所指出的那样,Vue在渲染大量组件方面苦苦挣扎。

也可以考虑将filterBy替换为您自己的过滤器实现。 filterBy考虑了很多因素,包括列表类型和其他参数。您需要最低限度的费用。 制作数组过滤器的快速方法是

 filters: {
    filterBy: (list, searchTerm) => {
      if (!searchTerm) return list;
      return list.filter(x => x.find(searchTerm) !== -1);
    },
  },
相关问题