使用大数据过滤列表 - VueJs



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

我认为问题超出了列表过滤的范围,正如 Evaldo 指出的那样,Vue 只是在渲染大量组件方面苦苦挣扎。

此外,请考虑将filterBy替换为自己的筛选器实现。 filterBy考虑了许多因素,包括列表类型和其他参数。你需要一个最低限度。制作数组过滤器的快速方法是

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

最新更新