代码性能优化
减少Object.defineProperty的执行次数
* vue2使用他来订阅data中的所有属性
* vue3使用proxy,解决了如下问题
* vue2的defineProperty不能察觉属性的添加与删除
* vue2的defineProperty在数组的所有方法都是自己实现的
* proxy可以做到
* __只有需要在页面中响应式显示的属性,才放到data中__
只显示一次的变量处理
* 也可以用v-once
data(){
return {
// 应针对里面属性不修改
val:Object.freeze({a:1})
}
}
一次都不显示的变量处理
// 直接给this.挂载属性使用,如 this.timer
this.timer = setInterval();
keep-alive
* 避免频繁的创建与销毁组件
- `include` - 字符串或正则表达式。只有名称匹配的组件会被缓存。
- `exclude` - 字符串或正则表达式。任何名称匹配的组件都不会被缓存。
- `max` - 数字。最多可以缓存多少组件实例。
keep-alive实例