20180828内容补充:我的代码目录结构是这样的-src--conponents_mobile---bb.vue--conponents_pc---bb.vue然后通过路由判断是移动还是pc进入,使用的不同文件夹里的组件,是否有可能两个组件文件夹中有两个同名的文件才会看上去加载两次?如上面结构,我的一个组件bb里面的mounted生命周期被调用了两次,我就想是否是因为这个组件渲染了两次?然后我改成了如下这样bb里面的mounted就不会调用两次了。我的问题是,对于一个组件,假如给它加上了v-show是否就是在页面渲染的时候,第一次渲染然后再判断v-show是否是true,是真的就再次渲染,所以看上去mounted就执行了两次了。望不吝指教,谢谢。2018.9.21才想起来应该要把后续讲讲,其实几个星期前已经搞清楚了,其实问题都是组件套用,且组件都是直接加载的,所以才会看出执行了两次。优化方法,现在是使用懒加载,用到的时候才去加载,具体可以使用v-if或是路由控制跳转,webpack配置好就行。
2 回答
偶然的你
TA贡献1841条经验 获得超3个赞
哥们,mounted在生命周期中只会执行一次。你的问题也没明白。简单来说v-if==false,代码不会执行。v-show会执行,这里说的是包在判断条件中的代码。其次你可以检测下代码是否有其他原因引起的。
添加回答
举报
0/150
提交
取消