React 学习-4

1.事件处理,传入函数作为事件处理函数

javascript 复制代码
<button onClick={activateLasers}>
  激活按钮
</button>

注意事项:(1)阻止默认行为必须使用preventDefault,不能使用return false

(2)ES6 class 语法来定义一个组件的时候,事件处理器会成为类的一个方法

(3) JSX 回调函数中类的方法默认是不会绑定 this 的,使用时应该为方法绑定 this(使用bind、属性初始化器、在回调函数中使用 箭头函数)

javascript 复制代码
构造器中绑定this示例:

    // 这边绑定是必要的,这样 `this` 才能在回调函数中使用
    this.handleClick = this.handleClick.bind(this);

方法中绑定this示例一:
render() {
    return (
      <button onClick={this.handleClick}>
        Click me
      </button>
    );
  }

方法中绑定this示例二:
render() {
    //  这个语法确保了 `this` 绑定在  handleClick 中
    return (
      <button onClick={(e) => this.handleClick(e)}>
        Click me
      </button>
    );
  }
  1. 事件传递参数
javascript 复制代码
<button onClick={(e) => this.deleteRow(id, e)}>Delete Row</button>
<button onClick={this.deleteRow.bind(this, id)}>Delete Row</button>

箭头函数中,参数e作为react事件对象显示传递,在bind传参方式中,e会被隐式传递同时排在参数后边

相关推荐
WYiQIU2 小时前
11月面了7.8家前端岗,兄弟们12月我先躺为敬...
前端·vue.js·react.js·面试·前端框架·飞书
谢尔登2 小时前
简单聊聊webpack摇树的原理
运维·前端·webpack
娃哈哈哈哈呀3 小时前
formData 传参 如何传数组
前端·javascript·vue.js
zhu_zhu_xia4 小时前
vue3+vite打包出现内存溢出问题
前端·vue
tsumikistep4 小时前
【前后端】接口文档与导入
前端·后端·python·硬件架构
行走的陀螺仪4 小时前
.vscode 文件夹配置详解
前端·ide·vscode·编辑器·开发实践
一只侯子5 小时前
Face AE Tuning
图像处理·笔记·学习·算法·计算机视觉
2503_928411565 小时前
11.24 Vue-组件2
前端·javascript·vue.js
Bigger5 小时前
🎨 用一次就爱上的图标定制体验:CustomIcons 实战
前端·react.js·icon
谢尔登5 小时前
原来Webpack在大厂中这样进行性能优化!
前端·webpack·性能优化