React基础概念

  1. React是基于组件化的开发,通过组件的组合,让web应用能够实现桌面应用的效果。
  2. React更有利于单页应用的开发。
  3. 并非MVC框架,只能算是V
  4. 具有单项数据流的特点
  5. 优势:代码复用率比较高。虚拟DOM,减少真实DOM操作,能够能够提高渲染的效率,

State 属性

this.props只能获取数据,不能修改,不能进行设置操作。

this.props和this.state的区别: this.state:每个组件都有state属性(独立的属性),state有读取和修改的功能。 能够做到虚拟DOM到真实DOM的修改,不能进行父组件向子组件的船值。 this.props:可以由父组件传值给子组件。

  1. 初始化State:
 getInitialState:function(){
return {
cnt:0
}
}
 
  1. 设置State
  2. 获取state的值
 count:function(){
this.setState({
cnt: this.state.cnt+1
})
}, <label>{this.state.cnt}</label>
 

react 中的input输入框不能修改

 defaultValue = {this.state.cnt}    //默认value
onChange={} //只要改变输入框中的值,就会触发事件
 

获取真实DOM节点

  1. 通过属性获取

    对要获取的input框添加 ref=""属性 (this.refs.pwdInput.refs.input.value)

  2. 函数方法

    对要获取的input框添加

     ref= {function(ele){   //父组件
    this._pwd = ele;
    }.bind(this)} ref= {function(ele){ //子组件
    this._input = ele;
    }.bind(this)} //使用的时候 this._pwd._input
     

    也可用箭头函数 ref = {(ele)=>this._input = ele} //子组件 ref = {(ele)=>this._pwd = ele} //父组件

Ajax

另一种Ajax提交方式:

    利用promise 异步模型。nodejs内部也是使用promise模型实现的单线程异步原理。

    fetch()方法,采用promise实现异步提交,没有用到XHR对象。、

组件的生命周期

三个方法

  1. componentWillMount //组件渲染之前
  2. render //组件渲染
  3. componentDidMount //组件渲染后

第一个和第三个在组件的生命周期中只执行一次。

React数据传递的更多相关文章

  1. React中父组件与子组件之间的数据传递和标准化的思考

    React中父组件与子组件之间的数据传递的的实现大家都可以轻易做到,但对比很多人的实现方法,总是会有或多或少的差异.在一个团队中,这种实现的差异体现了每个人各自的理解的不同,但是反过来思考,一个团队用 ...

  2. react生命周期,中间件、性能优化、数据传递、mixin的使用

    https://github.com/lulujianglab/blog/issues/34 一.生命周期 1,初始化的执行顺序,初始生命周期执行过程详解 class initSate extends ...

  3. react之传递数据的几种方式props传值、路由传值、状态提升、redux、context

    react之传递数据的几种方式 1.父子传值 父传值:<子的标签 value={'aaa'} index={'bbb'}></子的标签> 子接值:<li key={thi ...

  4. react组件的数据传递

    在react中,为了解决html标签构建应用的不足,将公共的功能单独抽离成一个文件作为一个组件,在使用的地方按需引入,既然是组件彼此调用,就会涉及到父子组件的通信,下面主要来总结简单的组件通信. 1, ...

  5. React Native移动开发实战-3-实现页面间的数据传递

    React Native使用props来实现页面间数据传递和通信.在React Native中,有两种方式可以存储和传递数据:props(属性)以及state(状态),其中: props通常是在父组件 ...

  6. React学习(2)—— 组件的运用和数据传递

    React官方中文文档地址:    https://doc.react-china.org/ 了解了组件之后,就需要理解“Props”和“State”的用法.首先来介绍State,State按照字面意 ...

  7. React中父子组件数据传递

    Vue.js中父子组件数据传递:Props Down ,  Events Up Angular中父子组件数据传递:Props Down,  Events  Up React中父子组件数据传递:Prop ...

  8. 《React-Native系列》RN与native交互与数据传递

    RN怎么与native交互的呢? 下面我们通过一个简单的Demo来实现:RN页面调起Native页面,Native页面选择电话本数据,将数据回传给RN展示. 首先是 Native侧 1.MainAct ...

  9. EXTJS中grid的数据特殊显示,不同窗口的数据传递

    //EXTJS中grid的数据特殊显示renderer : function(value, metaData, record, rowIndex, colIndex, store, view) { v ...

随机推荐

  1. Java:单例模式的七种写法(转载)

    第一种(懒汉,线程不安全): package Singleton; /** * @echo 2013-10-10 懒汉 线程不安全 */ public class Singleton1 { priva ...

  2. Swift缩水版MJExtension - Reflect的基本使用

    github:https://github.com/CharlinFeng/Reflect 直接拖拽Reflect文件夹到您的项目中即可,无任何第三方依赖!文件夹结构说明:.Coding 归档相关.R ...

  3. itext poi 学习之旅 (1)创建pdf

    从零开始学习itext 创建pdf 1.用到流进行创建的pdf import java.io.File; import java.io.FileOutputStream; import com.ite ...

  4. HC-05蓝牙模块基本使用

    1.进入AT模式 EN输入高电平+按住按键不放,然后上电,进入AT模式,不过AT指令只能输入一次,下次再输入AT需要重新进入 2.串口波特率设为38400,进行AT模式下的指令操作 3.基本AT指令 ...

  5. Java系列--第六篇 基于Maven的SSME之多国语言实现

    如果你的网站足够强大,以致冲出了国门,走向了国际的话,你就需要考虑做多国语言了,不过,未雨绸缪,向来是我辈程序人员的优秀品质,谁知道那天,我们的网站被国外大公司看中收购,从而飞上枝头变凤凰.不扯这么多 ...

  6. 获取aplicationContext对象,从而获取任何注入的对象

    在Servlet中 方法一: 从ServletContext 取出 Spring容器上下文 ApplicationContext applicationContext = (ApplicationCo ...

  7. javascript版QQ在线聊天挂件

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. php代码生成二维码

    //引用范例 1 public function index() { 2 echo "<img src='http://qr.liantu.com/api.php?bg=f3f3f3& ...

  9. CFLAGS/CPPFLAGS/CXXFLAGS in Makefile介绍

    先来看一张关于Makefile中的常见预定义变量. CFLAGS 表示用于 C 编译器的选项,CXXFLAGS 表示用于 C++ 编译器的选项.这两个变量实际上涵盖了编译和汇编两个步骤.大多数程序和库 ...

  10. C语言基础学习基本数据类型-变量和常量

    变量和常量 什么是变量和常量?有些数据在程序运行前就预先设定,并在运行过程中不发生变化,称之为常量:有些数据在程序运行中可能发生变化或被赋值,称之为变量. 使用变量前必须先声明一个变量.变量定义的语法 ...