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

相关推荐
傻啦嘿哟2 小时前
如何在 Python 中使用 colorama 库来给输出添加颜色
开发语言·python
geovindu3 小时前
go: Visitor Pattern
开发语言·设计模式·golang·访问者模式
宣宣猪的小花园.3 小时前
C语言重难点全解析:内存管理到位运算
c语言·开发语言·单片机
方安乐7 小时前
python之向量、向量和、向量点积
开发语言·python·numpy
candyTong8 小时前
一觉醒来,大模型就帮我排查完页面性能问题
前端·javascript·架构
小小小米粒9 小时前
Collection单列集合、Map(Key - Value)双列集合,多继承实现。
java·开发语言·windows
玩嵌入式的菜鸡9 小时前
网页访问单片机设备---基于mqtt
前端·javascript·css
前端一小卒9 小时前
我用 Claude Code 的 Superpowers 技能链写了个服务,部署前差点把服务器搞炸
前端·javascript·后端
czhc11400756639 小时前
C# 428 线程、异步
开发语言·c#
:12110 小时前
java基础
java·开发语言