Vue中data没有写return报Cannot read property ‘__ob__‘ of undefined错误

最近需到一个在开发中很常见错误,原因是自己开发时没仔细检查代码,删除数据时把data中return一并删除了,导致路由跳转点击无反应。data函数在Vue中是一个特殊的方法,用于定义组件的本地状态。经翻阅相关文档,了解到它必须返回一个对象,该对象包含在组件中使用的各种数据属性。

错误写法:

javascript 复制代码
export default {  
  data() {  
  
  }  
}

如果您的data函数没有返回任何东西(或者返回null或一个非对象值),那么您可能会看到类似的错误消息,指示数据未定义或未预期的类型的错误。如下:

javascript 复制代码
vue.min.js:6 TypeError: Cannot read property '__ob__' of undefined
    at a.e.$destroy (vue.min.js:6)
    at destroy (vue.min.js:6)
    at b (vue.min.js:6)
    at b (vue.min.js:6)
    at b (vue.min.js:6)
    at a.__patch__ (vue.min.js:6)
    at a.e.$destroy (vue.min.js:6)
    at destroy (vue.min.js:6)
    at b (vue.min.js:6)
    at $ (vue.min.js:6)

如上问题,解决办法是要么不写data(){},要么必须写return返回对象;确保您的data函数始终返回一个对象,以包含您需要在组件中使用的数据属性。

一个基本的data函数示例,其中返回一个对象,包含一个名为message的属性:

javascript 复制代码
export default {  
  data() {  
    return {  
      message: 'Hello Vue!'  
    }  
  }  
}

在以前项目开发中有人遇到此类错误,大家一起分析过,没想到事隔大半年因自己粗心大意,也犯了这么低级错误。

相关推荐
king王一帅4 小时前
Incremark Solid 版本上线:Vue/React/Svelte/Solid 四大框架,统一体验
前端·javascript·人工智能
智航GIS9 小时前
10.4 Selenium:Web 自动化测试框架
前端·python·selenium·测试工具
前端工作日常9 小时前
我学习到的A2UI概念
前端
徐同保9 小时前
为什么修改 .gitignore 后还能提交
前端
一只小bit9 小时前
Qt 常用控件详解:按钮类 / 显示类 / 输入类属性、信号与实战示例
前端·c++·qt·gui
Mr -老鬼10 小时前
前端静态路由与动态路由:全维度总结与实践指南
前端
Nan_Shu_61410 小时前
学习: Threejs (1)
javascript·学习
颜酱11 小时前
前端必备动态规划的10道经典题目
前端·后端·算法
wen__xvn11 小时前
代码随想录算法训练营DAY10第五章 栈与队列part01
java·前端·算法
Van_Moonlight11 小时前
RN for OpenHarmony 实战 TodoList 项目:加载状态 Loading
javascript·开源·harmonyos