React组件State提升(译)】的更多相关文章

译自:https://reactjs.org/docs/lifting-state-up.html (适当进行了裁减) 通常我们会碰到这样的情况,当某个组件的state数据改变时,几个React组件同时都需要做出反应.这时我们推荐把相应的state值共享到这些组件最接近的父类中.让我们看下实际是怎么做的. 在这个章节,我们将创建一个“温度计算器”,这个计算器通过给定的温度来计算水是不是沸腾了. 我们将从一个BoilingVerdice(沸水判定)组件开始.这个组件接受一个摄氏温度值作为其prop…
第二章 设计高质量的React组件 高质量React组件的原则和方法: 划分组件边界的原则: React组件的数据种类: React组件的生命周期. 2.1 易于维护组件的设计要素 1.高内聚:指的是把逻辑紧密相关的内容放在一个组件中.用户界面包括:内容.交互行为.样式. 2.低耦合:指的是不同组件之间的依赖关系要尽量弱化,也就是第个组件要尽量独立. 2.2 React组件的数据 React组件的数据分两种,prop和state,作何一个改变,都可能引发组件的重新渲染. 选prop or sta…
Lifting State Up state提升 对于在React应用程序中更改的任何数据,应该有一个单一的数据源.通常,都是将state添加到需要渲染的组件.如果其他组件也需要它,您可以将其提升到最接近的共同祖先.而不是尝试在不同组件之间同步状态,您应该依赖于自上而下的数据流. 如果一个值可以从props或state拿到(直接或间接),它就不应该保存在state里. Composition vs Inheritance 组件组合或继承 React建议使用组合而不是继承来重用组件之间的代码. 请…
react version: 15.4.2 React.Component 组件能够让你将UI拆分为多个独立自治并可重用的部分.在 React 中提供了 React.Component. 概述 React.Component 是一个抽象基类,直接引用 React.Component 无太大意义.反而,我们会用子类来继承它,并至少定义一个 render() 方法. 通常您将使用纯 JavaScript class 来定义一个 React 组件: class Greeting extends Rea…
 多个组件合成一个组件: var style = { fontSize: 20, color: '#ff0000' }; var WebSite = React.createClass({ render: function () { return ( <div style={style}> <Name name={this.props.name} /> <Link link={this.props.link} /> </div> ); } }); var N…
说说React组件的State React的核心思想是组件化的思想,应用由组件搭建而成, 而组件中最重要的概念是State(状态). 正确定义State React把组件看成一个状态机.通过与用户的交互,实现不同状态,然后渲染UI,让用户界面和数据保持一致.组件的任何UI改变,都可以从State的变化中反映出来:State中的所有状态都用于反映UI的变化,不应有多余状态. 那么什么样的变量应该做为组件的State呢: 可以通过props从父组件中获取的变量不应该做为组件State. 这个变量如果…
React 的核心思想是组件化的思想,应用由组件搭建而成,而组件中最重要的概念是State(状态),State是一个组件的UI数据模型,是组件渲染时的数据依据. 一. 如何定义State 定义一个合适的State,是正确创建组件的第一步.State必须能代表一个组件UI呈现的完整状态集,即组件的任何UI改变,都可以从State的变化中反映出来:同时,State还必须是代表一个组件UI呈现的最小状态集,即State中的所有状态都是用于反映组件UI的变化,没有任何多余的状态,也不需要通过其他状态计算…
React组件的State 1.正确定义State React把组件看成一个状态机.通过与用户的交互,实现不同状态,然后渲染UI,让用户界面和数据保持一致.组件的任何UI改变,都可以从State的变化中反映出来:State中的所有状态都用于反映UI的变化,不应有多余状态. 那么什么样的变量应该做为组件的State呢: 1.可以通过props从父组件中获取的变量不应该做为组件State. 2.这个变量如果在组件的整个生命周期中都保持不变就不应该作为组件State. 3.通过其他状态(State)或…
1.1.  状态理解 React的数据流:由父节点传递到子节点(由外到内传递),如果顶层组件某个prop改变了,React会向下传递,重新渲染所有使用过该属性的组件.除此之外React 组件内部还具有自己的状态,这些状态只能在组件内部修改.通过与用户的交互(点击),实现不同状态(显示.隐藏.数量增加...),然后渲染UI,让用户界面和数据保持一致.React中只需更新组件的state,然后根据新的 state 重新渲染用户界面. this.props  属性:由父节点传入到组件内部,只读,不可修…
React 的核心思想是组件化的思想,应用由组件搭建而成,而组件中最重要的概念是State(状态),State是一个组件的UI数据模型,是组件渲染时的数据依据. 一. 如何定义State 定义一个合适的State,是正确创建组件的第一步.State必须能代表一个组件UI呈现的完整状态集,即组件的任何UI改变,都可以从State的变化中反映出来:同时,State还必须是代表一个组件UI呈现的最小状态集,即State中的所有状态都是用于反映组件UI的变化,没有任何多余的状态,也不需要通过其他状态计算…