码迷,mamicode.com
首页 > 其他好文 > 详细

React事件方法、React定义方法的几种方式、获取数据、改变数据、执行方法传值

时间:2019-02-23 10:39:41      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:name   port   str   export   reac   san   定义数据   箭头函数   color   

1、案例实现代码如下

import React, { Component } from react;

/**
 * 特别注意this,对于传值和绑定都十分重要
 */
class Home4 extends Component{
    constructor(props){
        super(props);
        //定义数据
        this.state={
            msg:这是一个Home4组件,
            name:"杨杰"
        }
        this.getMessage = this.getMessage.bind(this);
    }

    run(){
        alert("这是一个run方法");
    }

    getData(){
        alert(this.state.msg);
    }

    //改变state值
    setData=()=>{

        this.setState({
            msg:"改变msg的值"
        })
    }
    getMessage(){
        alert(this.state.msg);
    }
    //箭头函数
    getName=()=>{
        alert(this.state.name);
    }
    setName=(str)=>{
        this.setState({
            name:str
        })
    }
    render() {
        return(
            <div>
                Home4 index 事件方法
                <br/>
                方法:{this.state.name}
                <br/>
                <button onClick={this.run}>执行方法,通过this.方法名</button>
                <br/>
                <p>方式1:通过this.方法名.bind(this)将this对象传递给getData()方法体内的this对象</p>
                <button onClick={this.getData.bind(this)}>执行方法1</button>
                <br/>
                <p>方式2:在构造函数,通过this.getMessage = this.getMessage.bind(this)这种方式赋值</p>
                <button onClick={this.getMessage}>执行方法2</button>
                <br/>
                <p>方式3:在构造函数,通过this.getMessage = this.getMessage.bind(this)这种方式赋值</p>
                <button onClick={this.getName}>执行方法3</button>

                <br/>
                <button onClick={this.setData}>改变state中的值</button>

                <br/>
                <button onClick={this.setName.bind(this,"zhangsan")}>执行方法传值</button>

            </div>
        )
    }
}
export default Home4;

 

React事件方法、React定义方法的几种方式、获取数据、改变数据、执行方法传值

标签:name   port   str   export   reac   san   定义数据   箭头函数   color   

原文地址:https://www.cnblogs.com/ywjfx/p/10421611.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!