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会被隐式传递同时排在参数后边

相关推荐
thatway19898 小时前
闲聊-关于AI终结者的警醒
前端
努力的小郑8 小时前
突发!Claude Code 51万行源码全网裸奔:一场史诗级“开源”事故,国内大厂笑麻了
前端·后端·ai编程
七度黑光8 小时前
用 openclaw 给故障复盘打分:质量审核自动化实践
运维·服务器·前端·数据库·自动化
HashTang9 小时前
Claude Code 源码中 REPL.tsx 深度解析:一个 5005 行 React 组件的架构启示
前端·后端·ai编程
wendycwb9 小时前
前端城市地址根据最后一级倒推,获取各层级id的方法
前端·vue.js·typescript
终端鹿10 小时前
Vue3 模板引用 (ref):操作 DOM 与子组件实例 从入门到精通
前端·javascript·vue.js
千寻girling10 小时前
不知道 Java 全栈 + AI 编程有没有搞头 ?
前端·人工智能·后端
小码哥_常10 小时前
Android开发:精准捕获应用的前后台行踪
前端
禹中一只鱼10 小时前
【力扣热题100学习笔记】 - 哈希
java·学习·leetcode·哈希算法
蜡台11 小时前
Vue 打包优化
前端·javascript·vue.js·vite·vue-cli