小程序
小游戏
企业微信
微信支付
扫描小程序码分享
在自定义函数中使用箭头函数的语法,发现调用this.setData({}) 方法会报错 发现this 打印为 undefined
1 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
page的外围什么都没有。。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
明白啦 谢谢大佬啦
我都不明白。。你明白了啥。。
应该是去找使用 ()=>{}的地方,它定义这个方法的对象。。page({})里的方法里,使用的时候,应该就是找到的page。。。但是如果在page的属性使用()=>{},应该是去找了定义 page()这个方法的对象。。小程序里看来是找不到这个对象。。或者故意有代码不让拿到
所以定义箭头函数的作用域是 page 对象里 上一层的话 那就是page外边了 page外面貌似拿不到东西 是这样理解吗
我是这么理解的。。不知道为啥拿不到page外的。。哈哈哈哈,应该是有东西的啊。。肯定定义在哪里,然后这里才能调用啊
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
page的外围什么都没有。。
明白啦 谢谢大佬啦
我都不明白。。你明白了啥。。
应该是去找使用 ()=>{}的地方,它定义这个方法的对象。。page({})里的方法里,使用的时候,应该就是找到的page。。。但是如果在page的属性使用()=>{},应该是去找了定义 page()这个方法的对象。。小程序里看来是找不到这个对象。。或者故意有代码不让拿到
箭头函数本身是没有this和arguments的,在箭头函数中引用this实际上是调用的是定义时的上一层作用域的this。
所以定义箭头函数的作用域是 page 对象里 上一层的话 那就是page外边了 page外面貌似拿不到东西 是这样理解吗
我是这么理解的。。不知道为啥拿不到page外的。。哈哈哈哈,应该是有东西的啊。。肯定定义在哪里,然后这里才能调用啊