Vue性能优化总结

  1. 不要在模板中写过多的表达式

  1. 尽量减少data中的数据

Object.freeze()去除Obeserve 特别是长久不变的大数据

能够用Object.freeze()去除Oberver监听,这样可以避免vue初始化的时候。

做一些无用操作,从而提高性能

  1. computed和watch需要分场景使用

computed擅长处理的场景: 一个数据受多个数据影响,如果一个属性是由其他属性计算而来的,这个属性依赖其他属性是一个多对1 或者1对1 ,一般用computed

wacth擅长处理的场景:监听数据变化 触发相应的操作

  1. 频繁切换使用v-show 不频繁切换使用v-if v-for加key key绑定唯一值比如id

key存在的意义:为了跟踪每个节点的特征,使其具有唯一性,高效更新虚拟dom

5.图片优化 用雪碧图 图片懒加载:监听scroll事件,当图片出现在可视区域时,将data-src值赋值给src,加载图片,在图片未加载时,用art属性

  1. 函数防抖(连续点击事件) 函数节流

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
`nextTick`是Vue框架提供的一个API,用于在DOM更新之后执行一个回调函数,这个回调函数可以访问到更新后的DOM。 Vue的数据驱动模式,当数据发生变化时,Vue会异步执行一系列的更新操作,而不是立即更新DOM。因此,当我们需要在DOM更新后执行某些操作时,我们需要使用`nextTick`。 具体来说,`nextTick`的作用是将回调函数推入一个队列中,在当前代码执行完成后,Vue会遍历这个队列,依次执行队列中的回调函数。这样做的好处是,我们可以在DOM更新完后执行回调函数,从而保证操作能够访问到最新的DOM。 下面我们来看一个具体的例子: ``` <template> <div>{{ message }}</div> </template> <script> export default { data() { return { message: 'Hello Vue!' }; }, methods: { handleClick() { this.message = 'Hello World!'; this.$nextTick(() => { console.log('DOM updated!'); }); } } }; </script> ``` 在上面的代码中,我们定义了一个`message`变量,然后在`handleClick`中修改了它的值,接着使用`$nextTick`在DOM更新后执行了一个回调函数,输出了`DOM updated!`。 需要注意的是,`nextTick`并不是立即执行回调函数,它会等到所有同步任务执行完毕后才会执行。这是因为Vue会将异步更新操作放入微任务队列中,而微任务会在所有同步任务执行完毕后立即执行。 总结一下,`nextTick`的作用是在DOM更新后执行回调函数,从而保证操作能够访问到最新的DOM。它会将回调函数推入一个队列中,在当前代码执行完成后,Vue会遍历这个队列,依次执行队列中的回调函数。需要注意的是,`nextTick`并不是立即执行回调函数,它会等到所有同步任务执行完毕后才会执行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值