为了账号安全,请及时绑定邮箱和手机立即绑定

vue 2.0 mounted 会执行两次问题原因(有个人解释)

vue 2.0 mounted 会执行两次问题原因(有个人解释)

慕哥9229398 2018-09-08 10:33:19
20180828内容补充:我的代码目录结构是这样的-src--conponents_mobile---bb.vue--conponents_pc---bb.vue然后通过路由判断是移动还是pc进入,使用的不同文件夹里的组件,是否有可能两个组件文件夹中有两个同名的文件才会看上去加载两次?<template>     <div class="a">         <bb v-show='registerComponentShow'></bb>         <cc v-show='projectComponentShow'></cc>     </div></template>如上面结构,我的一个组件 bb 里面的 mounted 生命周期被调用了两次,我就想是否是因为这个组件渲染了两次?然后我改成了如下<template>     <div class="a">         <bb v-if='registerComponentShow'></bb>         <cc v-if='projectComponentShow'></cc>     </div></template>这样 bb 里面的 mounted 就不会调用两次了。我的问题是,对于一个组件,假如给它加上了 v-show 是否就是在页面渲染的时候,第一次渲染 <bb></bb> 然后再判断 v-show 是否是 true,是真的就再次渲染,所以看上去 mounted 就执行了两次了。望不吝指教,谢谢。
查看完整描述

2 回答

?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

哥们,mounted在生命周期中只会执行一次。你的问题也没明白。简单来说v-if==false,代码不会执行。v-show会执行,这里说的是包在判断条件中的代码。其次你可以检测下代码是否有其他原因引起的。

查看完整回答
反对 回复 2018-09-09
  • 2 回答
  • 0 关注
  • 6387 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信