来源:未知 时间:2024-05-13 19:40 作者:小飞侠 阅读:次
[导读] 在类组件中如果使用 fn() {} 这种方式定义函数,函数this默认指向undefined, 也就是说函数内部的 this 指向需要被更正。 可以在构造函数中对函数的this进行更正,也可以在行内进行更正,...
在类组件中如果使用 fn() {} 这种方式定义函数,函数this默认指向undefined, 也就是说函数内部的 this 指向需要被更正。 可以在构造函数中对函数的this进行更正,也可以在行内进行更正,两者看起来没有太大区别,但是对性能的影响是不同的。 下面2种方式比较: 1. 构造函数只执行一次,所以函数this执行更正的代码也只执行一次。 2. 问题: render方法每次执行都会调用bind方法生成新的函数实例 export default class App extends React.Component { construct() { surper(); // 方式1 this.handleClick = this.handleClick.bind(this); } handleClick() { console.log(this) } render() { // 方式2 return <button onClick={this.handleClick.bind(this)}>按钮</button> } } 以上就是react类组件在构造函数中进行函数this绑定全部内容,感谢大家支持自学php网。 |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com