TypeError: Cannot set properties of undefined (setting ‘xx‘)

在写代码中经常会遇到TypeError: Cannot set properties of undefined (setting 'xx'),这个问题。

**一般出现的场景:**在调用接口访问后端数据时,前端渲染显示空白,并报此错。例如,我在调用高德地图,输入经纬度信息,希望得到地址名称,我将返回给我的地址赋值给data中的realAddress,代码写为this.realAddress = address,此时就会报错。

**原因分析:**this指向的对象发生了变化(现在this代表axios对象),需要在函数前将this指向的对象提前保存一下

解决方案:

方案一:回调函数使用箭头函数来使用。(responde)=>{}。普通函数的this默认指向window,箭头函数this与上一级作用域中的this指向同一个地方,继承了他的父级。

方案二:暂存this。const that = this

相关推荐
奋斗的小花生43 分钟前
c++ 多态性
开发语言·c++
魔道不误砍柴功1 小时前
Java 中如何巧妙应用 Function 让方法复用性更强
java·开发语言·python
闲晨1 小时前
C++ 继承:代码传承的魔法棒,开启奇幻编程之旅
java·c语言·开发语言·c++·经验分享
老猿讲编程1 小时前
一个例子来说明Ada语言的实时性支持
开发语言·ada
Chrikk2 小时前
Go-性能调优实战案例
开发语言·后端·golang
幼儿园老大*2 小时前
Go的环境搭建以及GoLand安装教程
开发语言·经验分享·后端·golang·go
canyuemanyue2 小时前
go语言连续监控事件并回调处理
开发语言·后端·golang
杜杜的man2 小时前
【go从零单排】go语言中的指针
开发语言·后端·golang
cs_dn_Jie2 小时前
钉钉 H5 微应用 手机端调试
前端·javascript·vue.js·vue·钉钉
开心工作室_kaic3 小时前
ssm068海鲜自助餐厅系统+vue(论文+源码)_kaic
前端·javascript·vue.js