Javascript 使用大数据筛选列表-VueJs

Javascript 使用大数据筛选列表-VueJs,javascript,vue.js,vuex,Javascript,Vue.js,Vuex,我使用来自的过滤器。 名单上有大约5000条记录。例如,当我按下一个字母时,“a”过滤大约需要10秒钟。当我输入一个较长的短语时,大约需要一秒钟。有没有办法加快对如此大列表中单个字母的过滤速度?我认为问题不在于列表过滤,正如所指出的,Vue只是在努力渲染大量组件 还考虑用自己的过滤器实现替换 FieldB/。code>filterBy考虑了很多因素,包括列表类型和附加参数。你需要一个最低限度。 制作数组过滤器的快捷方法是 filters: { filterBy: (list, sear

我使用来自的过滤器。
名单上有大约5000条记录。例如,当我按下一个字母时,“a”过滤大约需要10秒钟。当我输入一个较长的短语时,大约需要一秒钟。有没有办法加快对如此大列表中单个字母的过滤速度?

我认为问题不在于列表过滤,正如所指出的,Vue只是在努力渲染大量组件

还考虑用自己的过滤器实现替换<代码> FieldB/<代码>。code>filterBy考虑了很多因素,包括列表类型和附加参数。你需要一个最低限度。 制作数组过滤器的快捷方法是

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

我认为如果不进行分页,您将无法提高此性能。您需要一次获取5000条记录吗?正如evaldo所说,尝试减少记录数量,分页是一个很好的解决方案。若你们从数据库中获取列表,你们可以在服务器上过滤它。