React入门---属性(state)-7
state------>虚拟dom------>dom
这个过程是自动的,不需要触发其他事件来调用它。
state中文理解:页面状态的的一个值,可以存储很多东西。
学习state的使用:
1.state先初始化,在React中,每一个类跟所有的面向对象的函数一样,都有一个构造函数叫constructor。
2.将state的初始化放在constructor()里面。
export default class BodyIndex extends React.Component{
    //将state的初始化放在constructor()里面
    constructor(){
        super();//调用基类的所有初始化方法(这个是固定模式)
        //下面是对state固定的语法
        //初始化state后,初始化赋值
        //重要:state只作用于当前的class,绝不影响其他组件class(例如这个state是作用在主体部分,它就不会影响头部和底部)
        this.state = {username : "azedada"} //可以传json等很多格式(这个是初始化赋值)
    }
    render(){
        return(
                <div>
                    <h1>这里是主体内容部分</h1>
                    {/*state在页面显示*/}
                    <p>{this.state.username}</p>
                </div>
            )
    }
}
重要:state只作用于当前的class,绝不影响其他组件class(例如这个state是作用在主体部分,它就不会影响头部和底部)。
3.state发生改变,会立马引起刷新,但是这个刷新只会更改需要更改的部分,不会引起页面全部刷新,所以用react写出来的页面效率非常高。
接下来用定时器函数来做一个简单的理解:
export default class BodyIndex extends React.Component{
    //将state的初始化放在constructor()里面
    constructor(){
        super();
        this.state = {username : "azedada"}
    }
    render(){
        //定时器,4秒后进行刷新
        setTimeout(()=>{
            //更改state的时候
            this.setState({username : "hello"})
        },)
        return(
                <div>
                    <h1>这里是主体容部分</h1>
                    {/*state在页面显示*/}
                    <p>{this.state.username}</p>
                </div>
            )
    }
}
运行程序之后,就会发现 页面中 azedada 会在4秒中后变为 hello,这个过程只进行当前的刷新,没有页面的刷新。效率非常高。
React入门---属性(state)-7的更多相关文章
- React 三大属性state,props,refs以及组件嵌套的应用
		
React 三大属性state,props,refs以及组件嵌套的应用 该项目实现了一个简单的表单输入添加列表的内容 代码如下 <!DOCTYPE html> <html> & ...
 - React入门---属性(props)-8
		
Props 和 State对于组件Component是非常重要的两个属性. 区别:State对于模块来说是 自身属性: Props对于模块来说是 外来属性: 同样的,props也是只作用于当前的组 ...
 - react入门----(this.state/表单/Ajax)
		
1.this.state 组件免不了要与用户互动,React 的一大创新,就是将组件看成是一个状态机,一开始有一个初始状态,然后用户互动,导致状态变化,从而触发重新渲染 UI var TestStat ...
 - react入门(3)
		
在第一篇文章里我们介绍了jsx.组件.css写法 点击查看react入门(1) 第二篇文章里我们介绍了事件.this.props.children.props....other.map循环 点击查 ...
 - react入门(4)
		
首先还是来回顾一下前三篇讲的内容 react入门(1): jsx,组件,css写法 react入门(2):事件,this.props.children,props,...other react入门(3 ...
 - React 入门实例教程
		
现在最热门的前端框架,毫无疑问是 React . 上周,基于 React 的 React Native 发布,结果一天之内,就获得了 5000 颗星,受瞩目程度可见一斑. React 起源于 Face ...
 - React入门 (1)—使用指南(包括ES5和ES6对比)
		
前言 本篇会简明扼要的介绍一下React的使用方法.代码会用JSX+ES5和JSX+ES6两种方式实现. React简介 React来自Facebook,于2013年开源.至今不断修改完善,现在已经到 ...
 - React入门简单实践
		
参考文献: 1.React入门示例教程——阮一峰 2.React仅仅只是你的界限 React主要的优点就是增量更新(虚拟DOM)和组件化(状态机). <!DOCTYPE html> < ...
 - 2015年最热门前端框架React 入门实例教程
		
现在最热门的前端框架,毫无疑问是 React . 上周,基于 React 的 React Native 发布,结果一天之内,就获得了 5000 颗星,受瞩目程度可见一斑. React 起源于 Face ...
 
随机推荐
- Android Weekly Notes Issue #250
			
Android Weekly Issue #250 March 26th, 2017 Android Weekly Issue #250. 本期内容: 好几篇关于Android O预览版的文章; JU ...
 - linux ssh -l 命令运用
			
ssh是远程登录命令,-l选项是最常用的选项,下面是我的一些总结 远程登录:ssh -l userName ip # 远程登录到 10.175.23.9 ssh -l root2 10.175. ...
 - 【转】如何实现Flex页面跳转
			
其实对于这个题目是不恰当的,因为flex中是没有页面这个概念的,页面在flex里面其实就是一个个的Canvas,vbox,hbox等等之类的东西,看到的不同页面的切换,就是这些元素一层层的堆积,或者替 ...
 - poptest交流QQ群
			
欢迎大家加入Poptest大家庭. 测试开发交流群-1 450192312 测试开发交流群2 195983133 POPtest-接口测试交流 376529971 POPtest-接口测试交流群 13 ...
 - EasyUi基础学习(一)—基本组件(上)
			
一.概述 jQuery EasyUI是一组基于jQuery的UI插件集合体,而jQuery EasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面.开发者不需要编写复 ...
 - 看Lucene源码必须知道的基本规则和算法
			
上中学的时候写作文,最喜欢的季节我都是写冬天.虽然是因为写冬天的人比较少,那时确实也是对其他季节没有什么特殊的偏好,反而一到冬天,自己皮肤会变得特别白.但是冬天啊,看到的只有四季常青盆栽:瓜栗(就是发 ...
 - [笔记]RankSVM 和 IR SVM
			
之前的博客:http://www.cnblogs.com/bentuwuying/p/6681943.html中简单介绍了Learning to Rank的基本原理,也讲到了Learning to R ...
 - Spring+SpringMVC+MyBatis+easyUI整合优化篇(五)结合MockMvc进行服务端的单元测试
			
日常啰嗦 承接前一篇文章<Spring+SpringMVC+MyBatis+easyUI整合优化篇(四)单元测试实例>,已经讲解了dao层和service层的单元测试,还有控制器这层也不能 ...
 - 原生JavaScript实现焦点图轮播
			
不管是高校的网站还是电商的页面,焦点图的切换和轮播应该是一项不可或缺的应用.今天把焦点图轮播制作的技术要点做下笔记,以供日后查看. 一.结构层(HTML) 焦点图的HTML结构很简单,就是一个父容器( ...
 - 使用python解数独
			
偶然发现linux系统附带的一个数独游戏,打开玩了几把.无奈是个数独菜鸟,以前没玩过,根本就走不出几步就一团浆糊了. 于是就打算借助计算机的强大运算力来暴力解数独,还是很有乐趣的. 下面就记录一下我写 ...