小程序的this指向问题

小程序的this指向问题,第1张

小程序的this指凯戚向的是window,一般要在方法里重新定义的

原因 :回调函数success中的this显示undefined,需要将外层this传进来。至于为啥会盯乱陵报undefined,有陪判人给出解释是this指向回调函数本身。

另外一种方法:使用 箭头函数

控制台显示这两个指向相同

原因: 箭头函数中this指向外层作用域,

然后把this输一下是undefined,因为这个时候this指向的是当迟乎返前wx对象,而wx对象没有setData,我们应该将this的指向修改为page对象

只码饥要把success改顷凳成箭头函数就ok啦。。。

总结了一些在react项薯贺目中遇到的问题

1.和微信小程序一样的push事件不能直接用

错误:

正确:

2.react是单向数据流,所以这个用法是ok的

场景:点击增加商品数量

3.input表单赋值

场景:购物车数量随在input框内添数字改变

错误:

4.多input表单处理

当然你也可以不用state定义变量,写在redux中直接取也可以的

5.es6箭头函数

为什么箭头函数就可以直接在this函数中接着写this不报错呢?

箭头函数的this定义:箭头函数的this是在定义函数时绑定的,不是在执行过程中绑定的凯兆。简单的说,函数在定义时,this就继承了定义函数的对象。

https://www.jianshu.com/p/c1ee12a328d2

7.点击,带参点击

这个方法在页面加载之初就循环了二十多遍。。因为没绑定bind

应该这样写啊:

8.动态className

9.table的用法:

以下这种是会报错的,必须由tbody包含

10.公共方法引用

common.js:

普通公共方法就直接应用就可以了,异步action方法需要在mapDispatchToProps函数中注入需要使用的公共方法

引用到页面:

11.报错Proxy error

本来用的好好的,今早起来发现数据无法获取

找到占用5000端口的pid

14112就是node.exe,找到592就是金山词霸。。数孙派。额,金山词霸右键点击结束进程

但还是不行,我改了一下proxy

就好了

12.返回页面

这个除了Link标签以外当然也需要点击返回或跳转了

这几个方法不会刷新目标页,但是都会触发目标页面的componentWillMount()

13.定时器

一进来定时器就启动,返回首页时停止。这个this.interval属于该class的全局方法,不止可以在 componentDidMount()中定义,也可以在方法中定义,因为我们也会有点击按钮启动定时器的业务场景


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12535680.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存