在vue中watch和created哪个先执行?

在Vue中,通常的执行顺序是created、beforeMount、computed、mounted,然后是watch。如果watch设置了immediate:true,它会在创建时立即执行。当watch监听的是计算属性时,即使有immediate,Vue仍然会先执行computed。methods在特定事件触发时执行。文章强调了在不同生命周期钩子中进行数据初始化和DOM操作的合适时机。
摘要由CSDN通过智能技术生成

在vue中watch和created哪个先执行?
1、正常的顺序执行

复制代码

create      // 执行时挂载阶段还没有开始,模版还没有渲染成html,所以无法获取元素。created钩子函数主要用来初始化数据。
beforeMount // 这一步的时候,模版已经在内存中编译好了,但是尚未挂载到页面中去。
computed    // 是在DOM执行完成后立马执行(如:赋值)
mounted     // 钩子函数一般用来向后端发起请求,拿到数据后做一些业务处理。该函数在模版渲染完成后才被调用。DOM操作一般是在mounted钩子函数中进行。
watch       // 用于检测vue实例上数据的变动

默认加载的时候先computed再watch,不执行methods;等触发某一事件后,则是:先methods再watch。
methods方法有一定的触发条件,如click等。
所有方法都应该在methods里定义,在mounted或created里面使用this调用,用这种方法实现初始化。
复制代码
如果watch 加了 immediate: true, 就是watch先执行,否则就是created 先执行,如果有computed ,vue默认先computed 再执行watch

2、设置了watch immediate:true 他的优先级会提到最前面

watch:immediate
create
beforeMount
computed
mounted
watch

3、设置了watch immediate:true,监听的是计算属性的值 他的优先级应该会提到最前面,但是vue默认先computed 再执行watch

computed:(watch监听的)
watch:immediate
create
beforeMount
computed
mounted
watch
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值