vue3 使用teleport报错 找不到‘parentNode‘节点(未解决)

        官方文档使用teleport文档地址:Teleport | Vue.js        

        官方推荐使用场景就是把一个组件里的模态框方便定位在body下面,以实现全屏。但在实际使用中并不顺利,看见出现了以下错误。

        查询了相关文档目前并未彻底解决该问题。但在踩坑中为大家提供以下两点注意事项:

  1. 属性to = "节点",该节点只能是父级节点,不能是兄弟和子级节点。
  2. 在1的基础上使用to = "body"或者to = "#app"这两个节点是没问题的。

        我测试过to = "节点"为父级的id、class、ref,要么为报错,要么直接不生效。测试过在保证父级节点加载完后,通过按钮控制disabled侧面实现teleport移动到父级节点下也不行。希望后面解决的大佬看到了踢我一脚,谢谢!

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
当在Vue中引入组件时,如果出现不到组件的错误,通常是由于以下几个原因导致的: 1. 组件路径错误:首先要确保引入组件的路径是正确的。需要检查组件的相对路径是否正确,例如是否使用正确的相对路径或绝对路径。 2. 组件命名错误:要引入的组件可能存在命名错误。需仔细检查组件的命名是否正确,包括大小写和拼写。 3. 组件文件不存在:如果引入的组件文件不存在,就会出现不到组件的错误。需要检查组件文件是否存在,以及文件名是否正确。 4. 组件导出:Vue组件需要在文件中使用export default导出。如果组件文件没有正确导出组件,就会出现不到组件的错误。需要检查组件是否有正确导出。 5. 组件全局注册:如果没有将组件全局注册,就会出现不到组件的错误。在使用组件之前,需要使用Vue.component或Vue.use全局注册组件。如果是通过子组件引入,需要确保父组件在引入子组件之前已经注册了。 如果上述问题都没有导致错误,可以尝试删除缓存并重新安装依赖。可以运行npm cache clean命令清除缓存,然后运行npm install重新安装依赖。 总之,引入组件不到的错误可能由于文件路径错误、命名错误、文件不存在、组件导出或全局注册等原因导致。需要逐一检查这些可能的问题,并且根据情况采取相应的纠正措施。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值