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 分钟前
记录We码开发者工具的一个bug
前端·javascript
布朗克1682 分钟前
Go 入门到精通-29-测试与基准
开发语言·后端·golang·测试与基准
猫32819 分钟前
echarts 日常问题解决
前端·javascript·echarts
格林威44 分钟前
工业相机Chunk功能全解析:图像嵌入时间戳、编码器元数据(附堡盟C#代码)
开发语言·人工智能·数码相机·计算机视觉·c#·视觉检测·工业相机
小大宇1 小时前
Python 集成 Conda
开发语言·python·conda
不简说1 小时前
JS 代码技巧 vol.8 — 20 个函数式编程实战,把 if/else 拍扁的骚操作
前端·javascript·面试
还是奇怪1 小时前
Simon Willison 用 DSPy 优化 Datasette Agent 提示词:提示工程正在变成可测试的软件工程
java·开发语言·软件工程
Cobyte2 小时前
模板 DSL 解析器中的状态机设计
前端·javascript·vue.js
小大宇2 小时前
python flask框架 SSE流式返回、跨域、报错
开发语言·python·flask
Legendary_0083 小时前
LDR6500 设计指南:Type-C 音频快充二合一配件 PD 取电与插拔时序控制方案
c语言·开发语言·音视频