设计不合理
后端返回10w条数据,本身技术方案设计就不合理
主动和面试官沟通此事(这也许是面试官所期待的)
如果面试官非要这么做,那再继续寻找解决方案
浏览器能否处理10W条数据
JS没问题
渲染到 DOM 会非常卡顿
自定义中间层
自定义 nodejs 中间层,获取并拆分这10W条数据
前端对接 nodejs 中间层,而不是服务端
成本比较高
虚拟列表
只渲染可视区域 DOM
其他隐藏区域不显示,只用 <div> 撑起高度
监听容器滚动,随时创建和销毁 DOM
虚拟列表实现起来非常复杂,可借用第三方 lib
vue-virtual-scroll-list
https://www.npmjs.com/package/vue-virtual-scroll-list
react-virtualized
https://www.npmjs.com/package/react-virtualized
1