TypeError:Cannot read property ‘get’ ofundefined_typeerror unsupported operand

TypeError:Cannot read property ‘get’ ofundefined_typeerror unsupported operand1、如果是vue,先看看你的data写对了没,我有一次手误打成了date,检查了一下午才看出来o(╥﹏╥)o2、如果这个数据“xxx”是从后台异步获取的,那就最好在data中先给他个默认值比如,data(){return{obj1:”,obj2:null.obj3:{},obj4:[]}}mounted(){//获取后台数据给obj们赋值等等各种异步操作}或者当“xxx”是一个嵌套两层的

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

这句话直译过来就是:TypeError:无法读取未定义的属性“ xxx”

首先去看看属性 ‘xxx’ 有没有定义。没定义的根据实际需求在data中或者方法中定义一下。

1、如果在data中定义了,先看看你的data写对了没,我有一次手误打成了 date ,检查了一下午才看出来o(╥﹏╥)o

2、如果这个数据“xxx”是从后台异步获取的,那就最好在data中先给他个默认值
比如,

data() { 
   
   return { 
   
      obj1: '',
      obj2: null.
      obj3: { 
   },
      obj4: []
   }
}
mounted(){ 
   
    // 获取后台数据给obj们赋值等等各种异步操作
}

或者 当“xxx”是一个嵌套两层的结构 obj.name

data() { 
   
   return { 
   
      obj: { 
   
      	name: '',
      	age: null,
      }
   }
}

但是,当“xxx”是一个嵌套了多层的结构 obj.name.firstName,或者结构很复杂,那就不建议使用这种“占位”的方法。可以在模板中用 v-if 命令判断该值是否存在
比如:

//bad
<template>
  <div>{ 
   { 
    obj.name.firstName}}</div>
  <div>{ 
   { 
    obj.age}}</div>
</template>

// good
<template>
  <div v-if="foo.name && foo.title.firstName">{ 
   { 
    age.name.firstName}}</div>
  <div v-if="foo.age">{ 
   { 
    age.age}}</div>
</template>

注意要用 v-if ,不能用 v-show

页面初始化的时候,数据是从data中拿的,你都没在data中定义他,他可不得报错嘛。又因为程序的执行是很快的,拿到数据赋值之后触发页面更新,就能显示了。这就是为啥有时候报了这个错,但是页面中依然能显示“xxx”的值。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/172147.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Linux学习—退出vi编辑模式

    在Linux学习中总结退出vi编辑模式

  • aarch64指令集_AArch64应用程序级编程模型

    aarch64指令集_AArch64应用程序级编程模型根据实现选择,体系结构支持多级执行特权,由从EL0到EL3的不同异常级别表示。EL0对应于最低的特权级别,通常被描述为无特权。应用层程序员模型是在EL0上执行软件的程序员模型。系统软件决定异常级别,因此决定软件运行的特权级别。当操作系统同时支持EL1和EL0执行时,应用程序通常在EL0上运行。允许操作系统以唯一的或共享的方式将系统资源分配给应用程序。从其他进程中提供一定程度的保护,因此有助于保护操…

    2022年10月17日
  • servlet异步请求

    servlet异步请求1、什么是servlet异步请求Servlet3.0之前,一个普通Servlet的主要工作流程大致如下:(1)、Servlet接收到请求之后,可能需要对请求携带的数据进行一些预处理;(2)、调用业务接口的某些方法,以完成业务处理;(3)、根据处理的结果提交响应,Servlet线程结束。其中第二步处理业务逻辑时候很可以碰到比较耗时的任务,此时servlet主线程会阻塞等待完成业务处理,对于并发比较大的请求可能会产生性能瓶颈,则servlet3.0之后再此处做了调整,引入了…

  • java byte数组转json对象

    java byte数组转json对象Stringmessage=newString(“byte数组”);//去掉多余的引号和转义字符Stringsubstring=message.substring(1,message.length()-1).replace(“\\\””,”‘”);//转化为json对象JSONObjectjsonObject=newJSONObject(substring);

  • oracle语句和mysql语句有什么不同_短语与句子的区别

    oracle语句和mysql语句有什么不同_短语与句子的区别Oracle与MySQL的SQL语句区别1数据库/*&amp;amp;nbsp;mysql可以创建数据库,而oracle没有这个操作,oracle只能创建实例;&amp;amp;nbsp;sql数据库操作:database&amp;amp;nbsp;格式:&amp;amp;nbsp;&amp;amp;nbsp;*createdatabase数

  • 魔力宝贝服务端架设_魔力宝贝怀旧手游

    魔力宝贝服务端架设_魔力宝贝怀旧手游CC魔力宝贝服务端setup.cf解释#blserv=211.232.109.164//bl服务器地址#blserv=127.0.0.1//bl服务器端口blserv=222.122.31.125//bl服务器地址blservport=1072//bl服务器端口#blservport=9650//bl服务器端口battledebugmsg=0//战斗debug信息ba…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号