Vue3报错:Property “xxx“ was accessed during render but is not defined on instance.

46 篇文章 4 订阅

Vue3报错:Property “xxx” was accessed during render but is not defined on instance.

翻译:属性“xxx”在呈现期间被访问,但没有在实例上定义。

其实就是在模板上有,但是在script上没有定义

很多同学跟说这不是报错,是警告,其实只要是在渲染页面时出现的问题,我们都可以说成是报错

因为如果有警告,到项目发布的时候是会出现问题的

所以不管是报错还是警告,出现了就必须先解决掉

跟着这个报错的还有下面两个报错:
Unhandled error during execution of render function

意思是在执行渲染函数时未处理的错误
报错1
Unhandled error during execution of scheduler flush. This is likely a Vue internals bug.
这个就牛逼了,警告说可能是vue内部的bug,执行调度器刷新期间未处理的错误。
报错2
这三个报错都是一起出现的,所以找问题还是挺好找的,解决bug的提供一下思路

出现bug的背景是我在某一个文件中写了太多的代码,所以想把其中一部分封装成组件再引用进来,然后就新建了一个带有初始模板的页面,再把原页面中的部分代码函数样式复制过去

初始模板如下:

<template>
</template>

<script>
</script>

<style>
</style>

通过第一个报错,模板上有,但是没有定义,我们可以去script找,发现script里写了没有问题,然后第二三个报错并不能给我什么有利的信息,然后我就发现script中没有加上组合式 API即setup,加上了就没报错了

所以问题的出现原因是在新创建的vue模板文件中没有加上语法糖

解决问题就是<script setup>

通过此次报错,需要记一下在新建vue文件封装组件的时候检查标签有没有少写

  • 15
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端小王hs

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值