vue3和vue2在挂载入口的处理是不一样吗?

index.html入口

App.vue

在页面挂载之后,vue3是用App.vue添加到index.html里面的div的,所以出现了两个id=“app”的div

但是在vue2中,同样的挂载之后是直接用App.vue来替换掉index.html里这个id=“app”的div,所以页面上最后就只有一个id=“app”的div

是不是这里的挂载机制出现了改变,有没有写法可以让3的挂载也是和2一样直接替换而不是在div内部添加内容。
3的挂载就是常规写法:createApp(App).mount("#app")

阅读 3.6k
1 个回答

image.png
vue2一般写法是配置el,这时是使用outHTML获取根节点,也就是替换了整个节点,但是配置template,就是使用innerHTML获取根节点,而vue3正是使用innerHTML获取根节点
image.png

从这部分代码看vue2是可以达到vue3效果的,而vue3只有innerHTML方式没有outHTML方式

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题