react双项数据绑定

1、使用onChange事件

import React, { Component } from 'react'
import List from './List.js'

class Hello extends Component{
	constructor(){
		super()
		this.state = {
			list:[
				{id:1,name:"大得",text:"评论hello"},
				{id:2,name:"大得",text:"评论hello"},
				{id:3,name:"大得",text:"评论hello"},
				{id:4,name:"大得",text:"评论hello"},
				{id:5,name:"大得",text:"评论hello"},
				{id:6,name:"大得",text:"评论hello"}
			],
			name:"大得"
		}
	}
	
	render(){
		return (
			<div >
				<h2>{this.state.name}</h2>
				<input onChange={this.inputState} value={this.state.name}/>
				<h2 onClick={this.clicks}>大得想说</h2>
				{this.state.list.map((req,index) => {
					return <List key={index} lists={req} />
				})}
			</div>
		)
	}
	
	// 双向数据绑定
	inputState = (ev)=>{
		console.log(ev.target.value)
		this.setState({
			name:ev.target.value
		})
	}
	
	// 单向数据绑定
	clicks = ()=>{
		//单向数据绑定更新值
		this.setState({
			name:"dddd"
		})
		// alert(321)
	}
}

export default Hello;

2、使用ref双向数据绑定

import React, { Component } from 'react'
import List from './List.js'

class Hello extends Component{
	constructor(){
		super()
		this.state = {
			list:[
				{id:1,name:"大得",text:"评论hello"},
				{id:2,name:"大得",text:"评论hello"},
				{id:3,name:"大得",text:"评论hello"},
				{id:4,name:"大得",text:"评论hello"},
				{id:5,name:"大得",text:"评论hello"},
				{id:6,name:"大得",text:"评论hello"}
			],
			name:"大得"
		}
	}
	
	render(){
		return (
			<div >
				<h2>{this.state.name}</h2>
				<input ref="dade" onChange={this.inputState} value={this.state.name}/>
				<input ref="dade2" onChange={this.inputState} value={this.state.name}/>
				<h2 onClick={this.clicks}>大得想说</h2>
				{this.state.list.map((req,index) => {
					return <List key={index} lists={req} />
				})}
			</div>
		)
	}
	
	// 双向数据绑定
	inputState = (ev)=>{
		// this.setState({
		// 	name:ev.target.value
		// })
		console.log(this.refs)
		this.setState({
			name:this.refs.dade.value
		})
		
	}
	
	// 单向数据绑定
	clicks = ()=>{
		//单向数据绑定更新值
		this.setState({
			name:"dddd"
		})
		// alert(321)
	}
}

export default Hello;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大得369

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值