小程序
小游戏
企业微信
微信支付
扫描小程序码分享
什么时候可以直接用this,什么时候需要添加一个var that=this,然后用that代替this?
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
这边建议阅读一下function方法/函数/箭头函数相关文档和说明
简单理解一下:在小程序中this默认指向的是当前页面
但是当现在this在某个方法中出现的时候,这里的this就指向了当前方法本身,这个时候你就需要重新把this定义给另一个字段that或者vm等等,这里的that就相当于页面的this,当然如果使用箭头函数就不会改变指向的问题
比如 :
setTimeout(function () { // this = undefined }, 2000) setTimeout(()=>{ // this = this }, 2000)
看文档,看文档,看文档
开发遇到问题先网上搜索,基本开发遇见的问题网上百分之99都是有解决方案,刚开始接触这个行业在网上看见了解决方案不要直接去复制使用,先去了解一下 为什么会有这种问题,然后解决的原理是什么
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
不需要搞懂。
先用this,弹错误了,就改that。弄几次就自然懂了。
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
这边建议阅读一下function方法/函数/箭头函数相关文档和说明
简单理解一下:在小程序中this默认指向的是当前页面
但是当现在this在某个方法中出现的时候,这里的this就指向了当前方法本身,这个时候你就需要重新把this定义给另一个字段that或者vm等等,这里的that就相当于页面的this,当然如果使用箭头函数就不会改变指向的问题
比如 :
setTimeout(function () { // this = undefined }, 2000) setTimeout(()=>{ // this = this }, 2000)
看文档,看文档,看文档
开发遇到问题先网上搜索,基本开发遇见的问题网上百分之99都是有解决方案,刚开始接触这个行业在网上看见了解决方案不要直接去复制使用,先去了解一下 为什么会有这种问题,然后解决的原理是什么
不需要搞懂。
先用this,弹错误了,就改that。弄几次就自然懂了。