react绑定数据和修改数据

import React,{Component} from 'react';

class Hello extends Component{

    constructor(props){

      super(props);

      //react可以在这里定义数据

    this.state={

        msg:"我是一个hello组件",

        message:"我是message",

        username:"ligengxian"

    }

 

     //第二种改变this指向的方法,先在开始运行的时候就给他初始化

     this.getMessage=this.getMessage.bind(this);

 

          

    }

    //这里可以定义一些方法,跟render平级

    run(){

        alert("我是一个run方法")

    }

    getData(){

        //用了这个this.getData.bind(this)就可以这样子写

        alert(this.state.msg)

 

    }

    getMessage(){

        alert(this.state.message)

    }

//获取state里面的值的三种方法,这个是第三种,用的最多的一种方法

//改变this指向的方法

     getName=()=>{

        alert(this.state.username)

     }

 

//------------------------------------

//改变state里面的值

   setData=()=>{

   //改变state的值

   this.setState({

       msg:"我是一个home组件,这是改变后的值"

 

   })

   }

   setMessage=(str)=>{

    //改变state的值

    this.setState({

        username:str

 

    })

    }

    render(){

        return (

        <div>

          <h2>{this.state.msg}</h2>

          <br/>

          <h2>{this.state.username}</h2>

          <button onClick={this.run}>执行方法</button>

          <br/>

          

          //获取数据的方法

          <button onClick={this.getData.bind(this)}>获取数据第一种执行方法,改变this指向的方法</button>

          //第二种获取数据的方法

          <button onClick={this.getMessage}>获取数据第二种执行方法,改变this指向的方法</button>

 

          //第三种获取数据的方法

          <button onClick={this.getName}>获取数据第三种执行方法,改变this指向的方法</button>

          <br/>

          <button onClick={this.setData}>改变State的值</button>

          <br/>

          <button onClick={this.setMessage.bind(this,"张三")}>执行方法传值</button>

          //传入多个参数

          <button onClick={this.setMessage.bind(this,"张三",'李四')}>执行方法传值</button>

        </div>

     

        )

    }

}

export default Hello;

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值