zoukankan      html  css  js  c++  java
  • 与Vue 相比 React 是如何实现数据双向绑定的?

    1.v-model react没有实现
     
    2.在react中数据是单向的 js---->dom
     
    3.在react中如果需要数据双向绑定,js--->dom的绑定,有自己实现onChange事件
     
    4.可以实现双向绑定的标签有input:text textarea select
    import React, { Component } from 'react'
    
    export default class App extends Component{
    
        constructor(){
            super();
            this.state = {
                message: 'hello',
                year: 2000
            }
        }
        
        render(){
    
            let {message, year} = this.state;
    
            return (
                <div>
                    {/* v-model react没有实现 */}
                    {/* 在react中数据是单向的  js---->dom */}
    
                    {/* 在react中如果需要数据双向绑定,js--->dom的绑定,有自己实现onChange事件 */}
                    {/* 可以实现双向绑定的标签有input:text  textarea  select */}
    
                    <input type="text" value={message} onChange={this.inputChangeAction}/>
    
                    <button onClick={()=>{
                        this.setState({message: 'hi'});
                    }}>修改</button>
    
                    <select value={year} onChange={this.selectChangeAction}>
                        <option>1990</option>
                        <option>2000</option>
                        <option>2010</option>
                        <option>2020</option>
                    </select>
                </div>
            )
        }
    
        inputChangeAction = (ev)=>{
            console.log('变化了');
            console.log(ev.target.value);
    
            this.setState({message: ev.target.value});
    
        }
    
        selectChangeAction = (ev)=>{
            this.setState({year: ev.target.value});
        }
    }
  • 相关阅读:
    JQuery实现数组移除指定元素
    美团酒旅面经
    搜狗一面
    360面经
    头条面经
    搜狐笔试题
    kolakoski序列
    函数的节流
    隐藏元素的几种方法
    移动端适配与响应式布局
  • 原文地址:https://www.cnblogs.com/r-mp/p/11217999.html
Copyright © 2011-2022 走看看