美文网首页
react事件

react事件

作者: 樊小勇 | 来源:发表于2019-04-19 21:31 被阅读0次
  • bind 绑定事件的指向
<script>
    var person ={
        language:'粤语',

        speak(){
            // 打印指向   this指向调用者
            console.log(this);
            console.log(`他会讲${this.person.language}`)
        }
    }

    // 通常情况下调用  这个时候this指向person
    person.speak();

    // 为了多次调用方便我们把speak给一个对象
    var speak = person.speak
    speak();
    // 这个时候对打印出,他会讲undefinde 因为这个时候this指向windows而wind没有language

    // 这个情况下我们可以用到bind函数来绑定函数的指向
    var speak = person.speak.bind(person);
    speak();
 
</script>
  • 实例应用
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <!-- react框架文件 -->
    <script src="https://unpkg.com/react@16/umd/react.development.js"></script>
    <!-- react用来渲染页面的文件 -->
    <script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
    <!-- 生产环境中不建议使用 -->
    <!-- 用来编译jsx语法的库 -->
    <script src="https://unpkg.com/babel-standalone@6.15.0/babel.min.js"></script>
</head>
<body>
    <div id="app">

    </div>

    <script type="text/babel">
        // 定义一个react组件
        class Demo extends React.Component{
            constructor(){
                super();
                // 让this.login的this指向Demo组件
                this.login=this.login.bind(this);
            }
            render() {
                return(
                    <div>
                        <button onClick={this.login}>
                            你好呀
                        </button>
                    </div>
                )
            }

            login(){
                alert('傻子')
            }
        }

        ReactDOM.render(
            <Demo />,
            document.querySelector('#app')
        )
    </script>
</body>
</html>
  • 事件传参并显示
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <!-- react框架文件 -->
    <script src="https://unpkg.com/react@16/umd/react.development.js"></script>
    <!-- react用来渲染页面的文件 -->
    <script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
    <!-- 生产环境中不建议使用 -->
    <!-- 用来编译jsx语法的库 -->
    <script src="https://unpkg.com/babel-standalone@6.15.0/babel.min.js"></script>
</head>
<body>
    <div id="app">

    </div>


    <script type="text/babel">
        class Demo extends React.Component{
            constructor(props){
                super(props);
                this.toDetail = this.toDetail.bind(this);
            }
            toDetail(id){
                console.log(event);
                alert(id);
            }
            render() {
                return (
                    <div>
                        <ul>
                            <li><button onClick={()=>{this.toDetail(1001)}}>电影1</button></li>
                            <li><button onClick={()=>{this.toDetail(1002)}}>电影2</button></li>
                            <li><button onClick={()=>{this.toDetail(1003)}}>电影3</button></li>
                        </ul>
                    </div>
                )
            }
        }

        ReactDOM.render(
            <Demo/>,
            document.querySelector('#app')
        )
    </script>

<!-- 小技巧,需要联想功能的时候先别在script里加type="text/babel" -->
<!-- 但是编译完了之后记得要加上 -->
</body>
</html>

相关文章

  • 【React进阶系列】史上最全React事件机制详解

    框架总览 ? DOM事件流的三个阶段 ? 关于React事件的疑问? React事件绑定机制? React事件和原...

  • 2018-11-07 react 事件处理

    react事件处理和dom事件处理是相似的。 react: Dom: 所以: React事件绑定属性的命名采用驼峰...

  • 【React深入】React事件机制

    关于React事件的疑问 1.为什么要手动绑定this 2.React事件和原生事件有什么区别 3.React事件...

  • React基础(6) -- 事件处理

    React 事件处理 React 元素的事件处理和 DOM 元素类似。但是有一点语法上的不同: React 事件绑...

  • ReactJS_06 React 事件处理

    React 事件处理 React 元素的事件处理和 DOM 元素类似。但是有一点语法上的不同: React 事件绑...

  • React 事件处理

    React 事件处理 React 元素的事件处理和 DOM 元素类似。但是有一点语法上的不同: React 事件绑...

  • React 事件

    React 事件 React 自己维护了自己的事件, 已经对事件进行封装解决了浏览器兼容的问题 React 使用了...

  • React 事件处理机制

    React在处理事件和HTML中JS处理事件不同,本文介绍React中的事件处理机制。React中不同通过返回fa...

  • js函数防抖、节流实现

    React中使用防抖函数和节流函数 在React事件调用时,React传递给事件处理程序是一个合成事件对象的实例。...

  • react文档——事件处理

    事件处理 React 元素的事件处理和 DOM 元素的事件处理非常相似。但也有一些语法差异: React 事件使用...

网友评论

      本文标题:react事件

      本文链接:https://www.haomeiwen.com/subject/hlqhgqtx.html