前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >(五)在 React 中绑定事件

(五)在 React 中绑定事件

作者头像
老怪兽
发布2023-02-22 14:34:53
发布2023-02-22 14:34:53
2.6K00
代码可运行
举报
运行总次数:0
代码可运行

# 🥥一、在 React 中绑定事件

  • 接着上一章的案例,给他绑定事件,动态的切换 boolea

# 🥮二、预热原生事件绑定

# 原生事件绑定的几种方式
代码语言:javascript
代码运行次数:0
运行
复制
<button id="btn1">按钮一</button>
<button id="btn2">按钮二</button>
<button onclick="demo()">按钮三</button>

<script>
// 方法一 兼容性最好
const btn1 = document.getElmentById('btn1')
btn1.addEventListener('click', () => {
    alert('按钮一被点击了')
})

// 方法二
const btn2 = document.getElmentById('btn3')
btn2.onClick = () => {
    alert('按钮二被点击了')
}

// 方法三
function demo() {
    alert('按钮三被点击了')
}
</script>
代码语言:javascript
代码运行次数:0
运行
复制
// 1. 创建一个类组件
class Mood extends React.Component {
    constructor(props) {
        super(props)
        // 初始化状态
        this.state = {
            isMood: true
        }
    }

    render() {
        // 结构赋值 读取状态
        const { isMood } = this.state
        return <h1 onCLick={demo}>今天心情很{isMood ? '开心' : '伤心'}</h1>
    }
}

// 2. 渲染组件到页面
ReactDom.render(<Mood/>, document.getElmentById('test'))

function demo() {
    alert('按钮被点击了')
}

# 🍧总结

  1. React 中绑定事件可以使用原生的写法,但是不推荐使用原生的写法,推荐使用 React 的写法
  2. React 中的写法和原生的写法有所区别--请看下面的例子
代码语言:javascript
代码运行次数:0
运行
复制
// 原生的 onclick 要写成小驼峰形式 onClick
// 原生的 onbluer 要写成小驼峰形式 onBluer
  1. React 绑定方法不能直接调用方法,因为 React 一上来就会嗲用 return 里面的返回代码,所有就会造成页面一开始就执行
代码语言:javascript
代码运行次数:0
运行
复制
class Mood extends React.Component {
    ...

    render() {
        ...
        // 此处直接写函数名字就可以,不用加 () 调用
        return <h1 onCLick={demo}>今天心情很{isMood ? '开心' : '伤心'}</h1>
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年12月31日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • # 🥥一、在 React 中绑定事件
  • # 🥮二、预热原生事件绑定
    • # 原生事件绑定的几种方式
  • # 🍧总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档