加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

react Performance Tools 入门

发布时间:2020-12-15 07:36:42 所属栏目:百科 来源:网络整理
导读:参考文档:https://facebook.github.io/react/docs/perf.html 1.安装并引入 npm install react-addons-perf import Perf from ‘react-addons-perf’ 2.监控 Perf .start ()xxxx页面代码逻辑 Perf .stop () 3.打印结果 // 获取监控结果 var measure = Perf.g

参考文档:https://facebook.github.io/react/docs/perf.html

1.安装并引入
npm install react-addons-perf
import Perf from ‘react-addons-perf’

2.监控

Perf.start()
xxxx页面代码逻辑
   Perf.stop()

3.打印结果

// 获取监控结果
var measure = Perf.getLastMeasurements();
// 打印总时间
Perf.printInclusive(measure);
// 打印独占时间(不包括组件挂载时间)
Perf.printExclusive(measure);
// 打印浪费的时间(最有用的函数,例如render 了但是DOM没有变化)
Perf.printWasted(measure);
//操作真实dom的情况
Perf.printOperations(measure);

DEMO:点击按钮,数量加1 ,但是奇数的时候,数字不变(模拟wastTime)

import React,{Component} from 'react'; import ReactDOM from 'react-dom'; import Perf from 'react-addons-perf' // ES6 class AddBtn extends Component { constructor(props) { super(props) this.state = { count: 1 } } add() { if (this.state.count == 1) { Perf.start() } if (this.state.count == 10) { Perf.stop(); var measure = Perf.getLastMeasurements(); Perf.printInclusive(measure); Perf.printExclusive(measure); Perf.printWasted(measure); Perf.printOperations(measure); } var nowCount = this.state.count; this.setState({ count: nowCount + 1 }) } render() { let text = this.state.count; if (this.state.count % 2) { text = this.state.count - 1; } return <div> {text} <div onClick={this.add.bind(this)}>点击我添加数字</div> </div> } } ReactDOM.render( ( <div> <AddBtn /> </div> ),document.getElementById('J_contentContainer'))

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读