zoukankan      html  css  js  c++  java
  • React 元素渲染简单演示

    react更新元素渲染:计时器案例

    src/index.js

    import React from 'react';
    import ReactDOM from 'react-dom';
    import './index.css';
    import App from './App';
    import * as serviceWorker from './serviceWorker';
    
    function tick(){
      const element=(
        <div>现在是{new Date().toLocaleTimeString()}</div>
      )
    
      ReactDOM.render(
        element,
        document.getElementById('example')
      );
    
    }
    setInterval(tick,1000);
    
    // If you want your app to work offline and load faster, you can change
    // unregister() to register() below. Note this comes with some pitfalls.
    // Learn more about service workers: https://bit.ly/CRA-PWA
    serviceWorker.unregister();

    以上代码可以改为函数式封装

    import React from 'react';
    import ReactDOM from 'react-dom';
    import './index.css';
    import App from './App';
    import * as serviceWorker from './serviceWorker';
    
    function Clock(props){
      return(
        <div>现在是{props.date.toLocaleTimeString()}</div>
      )
    }
    
    function tick(){
      ReactDOM.render(
        <Clock date={new Date()}/>,
        document.getElementById('example')
      );
    }
    setInterval(tick,1000);
    
    // If you want your app to work offline and load faster, you can change
    // unregister() to register() below. Note this comes with some pitfalls.
    // Learn more about service workers: https://bit.ly/CRA-PWA
    serviceWorker.unregister();

    也可以改为类封装

    import React, { Component } from 'react';
    import ReactDOM from 'react-dom';
    import './index.css';
    import App from './App';
    import * as serviceWorker from './serviceWorker';
    
    class Clock extends React.Component {
    
      render(){
        return(
          <div>现在是{this.props.date.toLocaleTimeString()}</div>
        )
      }
    
    }
    
    function tick(){
      ReactDOM.render(
        <Clock date={new Date()}/>,
        document.getElementById('example')
      );
    }
    setInterval(tick,1000);
    
    // If you want your app to work offline and load faster, you can change
    // unregister() to register() below. Note this comes with some pitfalls.
    // Learn more about service workers: https://bit.ly/CRA-PWA
    serviceWorker.unregister();

    React 只会更新必要的部分
    值得注意的是 React DOM 首先会比较元素内容先后的不同,而在渲染过程中只会更新改变了的部分。

  • 相关阅读:
    sqlserver添加表、字段注释
    SQL语句增加字段、修改字段、修改类型、修改默认值
    端口概念
    删除数据库数据
    转移数据库表数据
    优化网站
    提高SQL查询效率
    相关方法扩展
    SQL空和NULL的区别
    C#分布式缓存Couchbase使用
  • 原文地址:https://www.cnblogs.com/chenyingying0/p/12690724.html
Copyright © 2011-2022 走看看