Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
3.9k views
in Technique[技术] by (71.8m points)

请问10万条数据 使用element-ui的transfer展现 有什么比较好的办法不卡吗

目前我使用了前端分页,10万条数据 每页20条 分5000页,这样展现倒是可以了,但是搜索的话,要遍历10万条数据 还是很慢很慢

item.rawData.filter((obj) => { 
      obj.label.indexOf(val) > -1 
      console.log('updateAllCheckedEnd', new Date().getTime() - start)
    })

这是我使用transfer的搜索方法,去filter10万条数据,不通过后端 前端可以解决这个问题吗


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

我想到了几个方法你试下能不能解决你的问题

  1. 通过setTimeout创建宏任务,十万条数据可以分批查询,这样每一批数据查完可以让js引擎做一些其他任务,不至于一下卡死。
  2. 通过webworker多线程,让子线程去执行运算任务,这样就防止了主线程的阻塞。
  3. 数据都存到indexDB中,查询的时候在indexDB中查询,indexDB书web端的数据库,文档:indexDB

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

2.1m questions

2.1m answers

60 comments

57.0k users

...