react 数据管理之state思想指南
react的数据管理库有不少,最常听到的可能是mobx redux altjs之类的,当然还有很多其他,可以自己搜索。
为什么需要数据管理库呢,因为react本身只是为了实现view的表现,而不是数据的管理。
而数据类库就是为了实现react的不能之数据管理。也就是model层的分区管理。这个model层你可以实现对后台数据的引入和输送到view层的展示,还有可以依靠数据的改变触发view层的展现的改变,从而实现前端视觉状态的改变和复杂展示、动态展示等,所以我们需要有一个数据类库如mobx来帮我们管理react下前端的数据管理,实现分别出来model层。
只要model层的数据改变,也就是我们在model层操作数据,如果这个数据关系到view层的展示,那么react view就会实现视觉状态的改变,从而实现动态性功能性的前端视觉展示,和我们之前用的jq有很大的不同,对前端的视觉改变不在是依靠dom的操作插入删除等操作,而是依靠对数据的管理来改变前端视觉的展示。数据的改变数据类库就会自动触发react view的视觉改变,这个我们前端的视觉展示操作改变的思想就是对数据的操作的改变。而react是专注view层的一个库,这个库有非常好的前端视觉改变操作性能,依靠其优秀的算法来实现视觉层的改变。这个良好的view视觉改变性能是react得到推崇的原因,其优越的视觉改变速度是原来dom操作无法实现的速度,至于react具体是怎么实现这么好的性能来改变前端视觉展示,我们不得而知,这个fc的研究成果,有强大研究动力的人可以自己去研究一下其内核和算法。
基本上现在的许多前端框架都是已经和原来的jq之类的直接操作dom的前端框架有很大的区别了,现在主要流行的且是大趋势的方法就是操作数据也就是变量的改变来达到控制view层的视觉展示改变。所以要有良好的前端能力需要对此有所深入掌握,也就是model层是数据池,这个数据池的内部变量的改变可以实现view的展现的改变。现在我们需要的能力的基本是能够搭建好view层和model层的桥梁,搭建好基本桥梁后,model层数据的改变能够符合逻辑思路和预期的视觉改变,搭建好基本的model与view的连接桥梁后,我们想要控制view层的改变主要是通过在model层改变数据操作数据来达到被改变后的数据自动触发view层视觉展示的改变。从而实现前端的一系列目的性的实现---前端动态界面的正确展现。
不管多复杂的数据操作,以react这个拥有优越性能的前端视觉展现能力的前端框架,我们就可以实现良好的视觉改变于人类肉眼所不能轻易所觉察出来的间隔展现切换,model里的数据改变快速触发了view 快速的视觉展现的切换,实现良好的前端界面动态控制,且能够有良好的性能体验,视觉改变的性能能达到用户预期的心理接受度。另外react框架主要流行的是单页应用的制作,而单页应用虽然初期加载量相对比较大,但是加载成功基本的js包后就可以实现拥有比原来dom操作更好的界面性能的体验,总体而言react的单页应用优势和优秀的view界面性能,可以实现良好的应用体验。
react 数据管理之state思想指南的更多相关文章
- 说说React组件的State
说说React组件的State React的核心思想是组件化的思想,应用由组件搭建而成, 而组件中最重要的概念是State(状态). 正确定义State React把组件看成一个状态机.通过与用户的交 ...
- React 中的函数式思想
函数式编程简要概念 函数式编程中一个核心概念之一就是纯函数,如果一个函数满足一下几个条件,就可以认为这个函数是纯函数了: 它是一个函数(废话): 当给定相同的输入(函数的参数)的时候,总是有相同的输出 ...
- React组件的state和props
React组件的state和props React的数据是自顶向下单向流动的,即从父组件到子组件中,组件的数据存储在props和state中.实际上在任何应用中,数据都是必不可少的,我们需要直接的改变 ...
- React入门---属性(state)-7
state------>虚拟dom------>dom 这个过程是自动的,不需要触发其他事件来调用它. state中文理解:页面状态的的一个值,可以存储很多东西. 学习state的使用: ...
- React组件的State
React组件的State 1.正确定义State React把组件看成一个状态机.通过与用户的交互,实现不同状态,然后渲染UI,让用户界面和数据保持一致.组件的任何UI改变,都可以从State的变化 ...
- react native中state和ref的使用
react native中state和ref的使用 因props是只读的,页面中需要交互的情况我们就需要用到state. 一.如何使用state 1:初始化state 第一种方式: construct ...
- React 三大属性state,props,refs以及组件嵌套的应用
React 三大属性state,props,refs以及组件嵌套的应用 该项目实现了一个简单的表单输入添加列表的内容 代码如下 <!DOCTYPE html> <html> & ...
- Webpack+React+ES6开发模式入门指南
React无疑是今年最火的前端框架,github上的star直逼30,000,基于React的React Native的star也直逼20,000.有了React,组件化似乎不再步履蹒跚,有了Reac ...
- react~props和state的介绍与使用
props是参数的传递,从上层模块向下层模块进行拿传递:而state是提局域变量,一般在本模块内使用,props是不能改变的,而state可以通过setState去修改自身的值. props Reac ...
随机推荐
- Microsoft Bot Framework 上手
因为这前使用过MS Bot Frameowrk 做过开发, 最近心血来潮想做(挖坑)一个小的bot. 今天带领大家使用MS Bot Framework创建Hello World. 首先,我们要创建项目 ...
- PADS 脚本记录:关于 getObjects
PADS 脚本记录:关于 getObjects GetObjects(plogObjectTypeComponent, "ZBOM*", False) 返回的一个对象,所有 ZBO ...
- ML(附录2)——最小二乘法
参见 :多变量微积分笔记2——最小二乘法
- revit api 实现过滤墙图元并选中
public IList<Element> findElementsByCategory(Autodesk.Revit.UI.UIApplication aApp, Document aD ...
- SQL Server数据库有三种恢复模式:简单恢复模式、完整恢复模式和大容量日志恢复模式
SQL Server数据库有三种恢复模式:简单恢复模式.完整恢复模式和大容量日志恢复模式: 1.Simple 简单恢复模式, Simple模式的旧称叫”Checkpoint with truncate ...
- Java面试题 corejava(一)
1.面向对象的特征有哪些方面? [基础] 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问 ...
- S2算法应用
需求:计算不同区域范围,X公里半径内实体店或场站覆盖率. 实现思路: 为了便于理解,将地球看成一个基于经纬度线的坐标系.将经度和纬度看成二维坐标系中的两个纬度,横轴表示经度[-180o, 0o),(0 ...
- ML: 降维算法-概述
机器学习领域中所谓的降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中.降维的本质是学习一个映射函数 f : x->y,其中x是原始数据点的表达, y是数据点映射后的低维向量 ...
- Problem 1 :nslookup,dig,host及网络相关命令
网络基础命令 [root@localhost sysconfig]# netstat -rn Kernel IP routing table Destination Gateway Genmask F ...
- 基于单片机的Wifi温度湿度测量仪
这次的制作背景是由于单片机课程实训课程要求 刚好手上有块ESP8266-12F的WiFi模块 于是就选择了制作一个基于单片机,使用WiFi传输数据的温湿度采集测量仪 制作过程: 由于有使用过WiFi模 ...