<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                通常情況下,React在沙箱中是非常快的。但是,在你應用的一些情景中,你需要仔細推敲每一個性能點。React提供了一個函數[shouldComponentUpdate](http://reactjs.cn/react/docs/component-specs.html#updating-shouldcomponentupdate),通過這個函數,你能夠給React的差異檢查添加優化代碼。 為了給你一個你的應用總體的性能概覽,ReactPerf是一個分析工具,告訴你需要把這些鉤子函數放在哪里。 > 注意: > > 開發的構建過程比生產的構建過程要慢,是因為所有額外邏輯的提供,例如,友好的控制臺警告(生產構建時會去掉)。因此,分析工具僅用于指出你應用中相對影響性能的部分。 ## 通用API 當使用`react-with-addons.js`在開發模式下構建的時候,這里描述的`Perf`對象是以`React.addons.Perf`的形式暴露出來的。 ### `Perf.start()`和`Perf.stop()` 開始/停止檢測。React的中間操作被記錄下來,用于下面的分析。花費一段微不足道的時間的操作會被忽略。 ### `Perf.printInclusive(measurements)` 打印花費的總時間。如果不傳遞任何參數,默認打印最后的所有檢測記錄。它會在控制臺中打印一個漂亮的格式化的表格,像這樣: ![](https://box.kancloud.cn/2015-07-20_55acbeeb2d924.png) ### `Perf.printExclusive(measurements)` “獨占(Exclusive)”時間不包含掛載組件的時間:處理props,`getInitialState`,調用`componentWillMount`和`componentDidMount`,等等。 ![](https://box.kancloud.cn/2015-07-20_55acbeeb4bd59.png) ### `Perf.printWasted(measurements)` **分析器最有用的部分**。 “浪費”的時間被花在根本沒有渲染任何東西的組件上,例如界面渲染后保持不變,沒有操作DOM元素。 ![](https://box.kancloud.cn/2015-07-20_55acbeeb7a81b.png) ### `Perf.printDOM(measurements)` 打印底層DOM操作,例如,“設置innerHTML”和“移除節點”。 ![](https://box.kancloud.cn/2015-07-20_55acbeebaf479.png) ## 高級API 上面的打印方法使用`Perf.getLastMeasurements()`打印好看的結果。 ### `Perf.getLastMeasurements()` 從最后的開始-停止會話中得到檢測結果數組。該數組包含對象,每個對象看起來像這樣: ~~~ { // The term "inclusive" and "exclusive" are explained below "exclusive": {}, // '.0.0' is the React ID of the node "inclusive": {".0.0": 0.0670000008540228, ".0": 0.3259999939473346}, "render": {".0": 0.036999990697950125, ".0.0": 0.010000003385357559}, // Number of instances "counts": {".0": 1, ".0.0": 1}, // DOM touches "writes": {}, // Extra debugging info "displayNames": { ".0": {"current": "App", "owner": "<root>"}, ".0.0": {"current": "Box", "owner": "App"} }, "totalTime": 0.48499999684281647 } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看