面试四

35 阅读1分钟

如何进行首屏优化

image.png 列表一次返回一万条数据:虚拟列表

图片懒加载 <div><img v-lazy src="../static/image/left.jpg" alt="img" /></div>

提前设置图片尺寸,尽量只重绘不重排

app预取,h5从列表页面进入详情页通过jsbridge的方式获取首屏内容。

hybrid: app将html、js、css文件提前加载好,在用file协议打开。再用ajax获取内容并展示。

服务端渲染ssr

缓存:服务端设置Cache-Control,控制浏览器缓存、代理缓存

tree-shaking: 打包时使用生产模式。只能在es model使用,es model是静态引入,编译时引入。commonjs动态引入,执行时引入,打包的时候根本不知道引用的是什么。

vue3模版中tree-shaking:模版编译会根据模版使用了哪些指令,插值等功能,去import哪些接口。需要什么就import什么,不需要就不去import。

vue路由懒加载,通过import或者require的方式引入。

http2:信道复用、分针传输(每一帧会有上下帧的信息,可以在接受后进行组合)