导航:首页 > 去中心化 > state怎么做去中心化

state怎么做去中心化

发布时间:2023-09-07 22:58:38

『壹』 state和setState分析

在 react中 通过 state 以及 setState() 来控制组件内部数据的状态,其实也可以使用类似全局变量的方式在 constructor 里定义,但是全局变量的污染性都是知道的,所以 react 内部这种 state 和 setState 还是很优秀的数据驱动页面模式。

state

state 是 react 组件内部用来存储数据状态的,与 vue 中的 data 类似。但他们的更新机制差别很大, vue 中可以直接改变 data , vue 内部的 watcher 机制会监听到这些数据的变化从而刷新页面,而 react 则是手动驱使 setState 去改变内部的 state ,从而使得页面刷新。

1.state的作用

state 是 React 组件的一个对象, React 把用户界面当做是状态机,想象它有不同的状态然后渲染这些状态,从而可以轻松让用户界面与数据保持一致。

React 中,更新组件的 state ,会导致重新渲染用户界面(不要操作 DOM ).简单来说,就是用户界面会随着 state 变化而变化.

2.state工作原理

常用的通知 React 数据变化的方法是调用 setState(data,callback) ,这个方法会合并 data 到 this.state ,并重新渲染组件。渲染完成后,调用可选的 callback 回调。大部分情况不需要提供 callback ,因为 React 会自动把界面更新到最新状态。

setState()

与 vue 中不同的是 state 不能直接被修改,需要通过 setState() 的方法去修改。

1、 setState() 更新组件状态之后不会立即生效, react 为了提高性能会按批次更新 state 然后 render , 即异步操作,所以同时写两个 setState 并不会触发两次,而是会合并处理。因此 setState() 之后立即去取 state 的值并不是更新之后的状态。

2、 setState() 第一个参数接受两种类型的参数, Object 以及 Function

当参数是 Object 的时候, 可以即为对应 state 中的 key , value 即是新的值。

Function

当参数是函数的时候, setState() 会将上一个 setState() 的结果作为参数传入这个函数

setState() 第二个参数是一个回调函数,表示 state 更新完成

看到这个回调函数,我们可以想象到很多场景,当页面更新完成后才进行的某些处理,将异步操作变为同步,而这也可以和 await/async 结合使用

在 react 中更新页面是一个很复杂的操作, vue 也是,全局更新和部分更新,目前感觉还没有哪种语言能非常智能的知道准确的要更新哪一部分内容,但是 react 的机制优秀的就在于 js 操控的虚拟 dom ,即使是全局更新,也是很快速的更新。

阅读全文

与state怎么做去中心化相关的资料

热点内容
星火矿池北京 浏览:367
以太坊安卓版 浏览:73
skyswc虚拟货币 浏览:969
全球挖矿小说 浏览:156
比特币分析师名字 浏览:922
比特币区块容量 浏览:168
kec挖矿 浏览:212
比特币合约可以不用杠杆 浏览:954
大话2挖矿最累 浏览:666
易捷数字货币系统是正规的吗 浏览:689
区块链区块记录什么 浏览:227
游戏虚拟货币条款 浏览:350
区块链服务网络bns股票 浏览:787
区块链宠物猫游戏 浏览:753
dogeusgt是类似于比特币吗 浏览:649
awu数字货币案情进展 浏览:147
比特币平台手续费排行 浏览:564
蚂蚁矿池里的比特币如何转入钱包 浏览:169
btc100交易台有哪些 浏览:729
有抽卡挂机三国游戏可以挖矿 浏览:1000