打包dist过大的解决办法?
dist打包生成的文件中有 .map 文件,可以删除。在 vue.config.js文件中配置:productionSourceMap: false
组价和路由使用懒加载、按需引入等
对于文件和图片进行压缩。 安装压缩组件: compression-webpack-plugin
安装后进行导入配置:
最小化代码 minisize: true
分割代码: splitChunksl
超过限定值的文件进行压缩,threshold: 文件大小(字节为单位)
computed 和 watch 的区别?
1.computed是计算属性,watch是监听器,用来监听某一个值的变化进而触发相应的回调
2.computed中的函数必须要有return返回、watch没有必须的要求返回return
3.computed是第一次加载就触发一次,watch首次加载不会触发,如果需要首次加载需要设置immediate属性
4.computed中的函数所依赖的属性没有发生变化,那么调用当前的函数的时候会从缓存中获取;而watch在每次监听值发生变化的时候都会执行回调。
$nextTick的作用?
首先我们要先明白一个道理:Vue的响应式并不是数据发生变化后,DOM立即跟着发生变化的,而是按一定的策略进行DOM更新的。
作用:$nextTick 是在下次 DOM 更新循环结束之后执⾏延迟回调,在修改数据之后使⽤ $nextTick,则可以在回调中获取更新后的 DOM,在下次 DOM 更新循环结束之后执行延迟回调
说白了就是:当数据更新了,在DOM更新后,自动执行该函数