vue v-else中使用document.getElementById获取不到值的问题

vue v-else中使用document.getElementById获取不到值的问题
这个问题困扰了我两天,我经过反复排查,终于定位到了问题出现在v-if / v-else 判断属性中,

判断1:我把含有id的标签写在了v-else中,结果,通过document.getElementById获取不到组件,

判断2:然后我尝试,把含有id组件写在v-if中,这时可以获取到组件了,但是当v-else的组件显示出来以后,发现同一个位置,v-else页面控件对应的位置也能获取到这个id,于是我发现,使用v-if和v-else,他们是共用一个画布页面,位置也是对应覆盖的,所以相同位置会赋值相同的id,而且id只能写在v-if中,写在v-else中id不会被挂载

解决方案:使用v-show来替换,完美解决。
备注:这个问题是发生在对接阿里云上传服务时候,使用了PlUploader注册id的方案,因为这个组件实例化时需要传入id参数。

你可能感兴趣的:(技术#编码#工具使用,vue.js,前端,javascript)