react篇章-React State(状态)-数据自顶向下流动

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Hello React!</title>
<script src="https://cdn.staticfile.org/react/16.4.0/umd/react.development.js"></script>
<script src="https://cdn.staticfile.org/react-dom/16.4.0/umd/react-dom.development.js"></script>
<script src="https://cdn.staticfile.org/babel-standalone/6.26.0/babel.min.js"></script>
</head>
<body>

<div id="example"></div>
<script type="text/babel">
function FormattedDate(props) {
  return <h2>现在是 {props.date.toLocaleTimeString()}.</h2>;
}

class Clock extends React.Component {
  constructor(props) {
    super(props);
    this.state = {date: new Date()};
  }

  componentDidMount() {
    this.timerID = setInterval(
      () => this.tick(),
      1000
    );
  }

  componentWillUnmount() {
    clearInterval(this.timerID);
  }

  tick() {
    this.setState({
      date: new Date()
    });
  }

  render() {
    return (
      <div>
        <h1>Hello, Zzw ReactState 数据自顶向下流动!</h1>
        <h2>父组件或子组件都不能知道某个组件是有状态还是无状态,并且它们不应该关心某组件是被定义为一个函数还是一个类。

这就是为什么状态通常被称为局部或封装。 除了拥有并设置它的组件外,其它组件不可访问。

以下实例中 FormattedDate 组件将在其属性中接收到 date 值,并且不知道它是来自 Clock 状态、还是来自 Clock 的属性、亦或手工输入:</h2>
        <FormattedDate date={this.state.date} />
      </div>
    );
  }
}

ReactDOM.render(
  <Clock />,
  document.getElementById(‘example‘)
);
</script>

</body>
</html>

原文地址:https://www.cnblogs.com/zzzzw/p/10411542.html

时间: 2025-01-12 20:17:03

react篇章-React State(状态)-数据自顶向下流动的相关文章

react篇章-React State(状态)-将生命周期方法添加到类中

将生命周期方法添加到类中 在具有许多组件的应用程序中,在销毁时释放组件所占用的资源非常重要. 每当 Clock 组件第一次加载到 DOM 中的时候,我们都想生成定时器,这在 React 中被称为挂载. 同样,每当 Clock 生成的这个 DOM 被移除的时候,我们也会想要清除定时器,这在 React 中被称为卸载. 我们可以在组件类上声明特殊的方法,当组件挂载或卸载时,来运行一些代码: <!DOCTYPE html> <html> <head> <meta cha

react篇章-React State(状态)-组件都是真正隔离的

<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>React 实例</title> <script src="https://cdn.staticfile.org/react/16.4.0/umd/react.development.js"></script> <script src=&quo

react篇章-React Props

state 和 props 主要的区别在于 props 是不可变的,而 state 可以根据与用户交互来改变.这就是为什么有些容器组件需要定义 state 来更新和修改数据. 而子组件只能通过 props 来传递数据. demo1 <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>菜鸟教程 React 实例</title> <scrip

混合开发的大趋势之一React Native State (状态),Style(样式)

转载请注明出处:王亟亟的大牛之路 先安利:https://github.com/ddwhan0123/Useful-Open-Source-Android 今天又加了几个疑难杂症哦!! 上一篇讲了属性,这一篇主要讲 State Style,给出上次的传送门,以便有更好的连贯性:http://blog.csdn.net/ddwhan0123/article/details/52238478 State 状态 在RN中用来描述对象的除了属性Props还有状态State,那么状态又是个什么东西呢? T

React State(状态)

React State(状态) React 把组件看成是一个状态机(State Machines).通过与用户的交互,实现不同状态,然后渲染 UI,让用户界面和数据保持一致. React 里,只需更新组件的 state,然后根据新的 state 重新渲染用户界面(不要操作 DOM). 以下实例中创建了 LikeButton 组件,getInitialState 方法用于定义初始状态,也就是一个对象,这个对象可以通过 this.state 属性读取.当用户点击组件,导致状态变化,this.setS

【react】React学习:状态(State) 和 属性(Props)

React :元素构成组件,组件又构成应用.React核心思想是组件化,其中 组件 通过属性(props) 和 状态(state)传递数据. State 与 Props 区别props 是组件对外的接口,state 是组件对内的接口.组件内可以引用其他组件,组件之间的引用形成了一个树状结构(组件树),如果下层组件需要使用上层组件的数据或方法,上层组件就可以通过下层组件的props属性进行传递,因此props是组件对外的接口.组件除了使用上层组件传递的数据外,自身也可能需要维护管理数据,这就是组件

【react】 redux 公共状态管理---数据的渲染,数据的修改,再把修改的数据渲染到当前组件

首先需要明白,redux中有方法,这些方法是封装好的 dispatch 方法是根据动作做派发的过程getState 方法是返回当前store中的state的数据subscribe 方法是事件订阅,参是一个函数,它有一个数值专门存放函数,当执行对应的事件函数,就会遍历触发该数组中的函数 1.store中的state数据渲染到当前组件 2.对store中的state的数据进行修改 在当前组件,触发,当前组件引入的store文件中的dispatch(派发器,根据传入的动作做不的行为事件),reduce

【05】react 之 组件state

1.1.  状态理解 React的数据流:由父节点传递到子节点(由外到内传递),如果顶层组件某个prop改变了,React会向下传递,重新渲染所有使用过该属性的组件.除此之外React 组件内部还具有自己的状态,这些状态只能在组件内部修改.通过与用户的交互(点击),实现不同状态(显示.隐藏.数量增加...),然后渲染UI,让用户界面和数据保持一致.React中只需更新组件的state,然后根据新的 state 重新渲染用户界面. this.props  属性:由父节点传入到组件内部,只读,不可修

React入门---属性(state)-7

state------>虚拟dom------>dom 这个过程是自动的,不需要触发其他事件来调用它. state中文理解:页面状态的的一个值,可以存储很多东西. 学习state的使用: 1.state先初始化,在React中,每一个类跟所有的面向对象的函数一样,都有一个构造函数叫constructor. 2.将state的初始化放在constructor()里面. export default class BodyIndex extends React.Component{ //将state