国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

5.React.memo 性能優(yōu)化

這篇具有很好參考價值的文章主要介紹了5.React.memo 性能優(yōu)化。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

性能優(yōu)化, React.memo

1. 函數(shù)組件修改同一個值,不會重新渲染.類組件會setState會重新渲染
(當響應(yīng)式數(shù)據(jù)沒有發(fā)生改變時候, 更新時不會重新執(zhí)行, 不會重新render隨機數(shù)沒有變)
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style></style>
  <script src="../react.development.js"></script>
  <script src="../react-dom.development.js"></script>
  <script src="../babel.min.js"></script>
  <script src="../lodash.min.js"></script>
</head>

<body>
  <div id="app"></div>
  <script type="text/babel">
    /* 
    性能優(yōu)化, React.memo
    1. 函數(shù)組件修改同一個值,不會重新渲染.類組件會setState會重新渲染
    (當響應(yīng)式數(shù)據(jù)沒有發(fā)生改變時候, 更新時不會重新執(zhí)行, 不會重新render隨機數(shù)沒有變)

    2. React.memo類似純組件,可提高組件性能表現(xiàn)(類組件PureComponent)
    當傳遞的值發(fā)生改變,重新render,當沒有發(fā)生改變不重新render .
    加Math.random(),驗證
    */

    let app = document.querySelector('#app');
    let root = ReactDOM.createRoot(app);
    let { useState } = React;

    // 不重新Render
    let Welcome = (props) => {  
      const [ count, setCount ] = useState(0);
      const handleClick= () => {
        setCount(1);
      }
      console.log(123);
      return (
        <div>
          <button onClick={handleClick}>點擊</button>
          hello Welcome { Math.random() }
        </div>
      );
    }
    
    let element = (
      <Welcome />
    );
    root.render(element);
  </script>
</body>

</html>

2. React.memo類似純組件,可提高組件性能表現(xiàn)(類組件PureComponent)

當傳遞的值發(fā)生改變,重新render,當沒有發(fā)生改變不重新render .
加Math.random(),驗證
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <script src="../react.development.js"></script>
  <script src="../react-dom.development.js"></script>
  <script src="../babel.min.js"></script>
</head>
<body>
  <div id="app"></div>
  <script type="text/babel">

    let app = document.querySelector('#app');
    let root = ReactDOM.createRoot(app);
    let { useState } = React;

    let Welcome = (props) => {  
      const [ count, setCount ] = useState(0);
      const handleClick= () => {
        setCount(1);
      }
      return (
        <div>
          <button onClick={handleClick}>點擊</button>
          hello Welcome
          <Head count={count} />
        </div>
      );
    }

    // 不包裹,每次都更新
    // 包裹,依賴更新時候才會更新
    let Head = React.memo(() => {
      return (
        <div>hello Head, { Math.random() }</div>
      )
    })
    
    let element = (
      <Welcome />
    );
    root.render(element);


  </script>
</body>
</html>

文章來源地址http://www.zghlxwxcb.cn/news/detail-672414.html

到了這里,關(guān)于5.React.memo 性能優(yōu)化的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【three.js / React-three-fiber】加載3D模型性能優(yōu)化

    【three.js / React-three-fiber】加載3D模型性能優(yōu)化

    無論是大型虛擬世界還是簡單的網(wǎng)站,性能優(yōu)化都是必要的。 特別是在運用三維模型的情況下,我們需要更加深入的優(yōu)化。因為 三維模型通常包含大量的數(shù)據(jù)和復雜的幾何形狀 ,如果不進行性能優(yōu)化,瀏覽器可能會因為負載過重而崩潰。 在本文中,我們將探討如何在 thre

    2024年02月02日
    瀏覽(24)
  • react中的formik如何使用

    Formik 是一個用于處理表單狀態(tài)和驗證的 React 庫。它提供了一種簡化和統(tǒng)一的方式來處理復雜的表單邏輯,包括表單值的管理、表單驗證、表單提交和錯誤處理等。 安裝 Formik 和 Yup(用于表單驗證): 導入所需的模塊: ? 創(chuàng)建表單組件: 渲染表單組件: 通過上述步驟,你就

    2024年02月13日
    瀏覽(18)
  • 【《React Hooks實戰(zhàn)》——指導你使用hook開發(fā)性能優(yōu)秀可復用性高的React組件】

    【《React Hooks實戰(zhàn)》——指導你使用hook開發(fā)性能優(yōu)秀可復用性高的React組件】

    使用React Hooks后,你很快就會發(fā)現(xiàn),代碼變得更具有組織性且更易于維護。React Hooks是旨在為用戶提供跨組件的重用功能和共享功能的JavaScript函數(shù)。利用React Hooks, 可以將組件分成多個函數(shù)、管理狀態(tài)和副作用,并且不必聲明類即可調(diào)用React內(nèi)置的功能。而且,上述所有的操作

    2024年02月14日
    瀏覽(24)
  • React hooks之useEffect、useMemo優(yōu)化技巧

    useEffect使用JSON.stringfy進行過濾,避免重復執(zhí)行 將數(shù)組直接放入依賴數(shù)組可能不會按預期工作,因為數(shù)組比較是基于引用而不是內(nèi)容。也就是說,如果數(shù)組引用沒有變,即使數(shù)組內(nèi)容發(fā)生了變化,副作用也不會重新運行?;蛘邤?shù)組內(nèi)餓哦那個沒有改變但是引用卻發(fā)生變化時,

    2024年02月12日
    瀏覽(44)
  • React.Memo和useMemo的區(qū)別?

    hello world歡迎來到前端的新世界 ??當前文章系列專欄:react.js ?????博主在前端領(lǐng)域還有很多知識和技術(shù)需要掌握,正在不斷努力填補技術(shù)短板。(如果出現(xiàn)錯誤,感謝大家指出)?? ??感謝大家支持!您的觀看就是作者創(chuàng)作的動力 React.memo和useMemo是React中兩個不同的特性,用

    2024年02月06日
    瀏覽(17)
  • ahooks.js:一款強大的React Hooks庫及其API使用教程(四)

    ahooks是一款由阿里巴巴開發(fā)團隊設(shè)計的React Hooks庫,提供了一系列實用的React Hooks,以便開發(fā)者更好地使用React的功能。ahooks的設(shè)計原則是“最小API,最大自由”,旨在提供最小的、最易于理解和使用的API,同時保留最大的使用自由度。 使用npm或yarn安裝ahooks: API介紹合集:

    2024年02月11日
    瀏覽(18)
  • ahooks.js:一款強大的React Hooks庫及其API使用教程(二)

    ahooks是一款由阿里巴巴開發(fā)團隊設(shè)計的React Hooks庫,提供了一系列實用的React Hooks,以便開發(fā)者更好地使用React的功能。ahooks的設(shè)計原則是“最小API,最大自由”,旨在提供最小的、最易于理解和使用的API,同時保留最大的使用自由度。 使用npm或yarn安裝ahooks: 前面的API:aho

    2024年02月12日
    瀏覽(26)
  • ahooks.js:一款強大的React Hooks庫及其API使用教程(一)

    ahooks是一款由阿里巴巴開發(fā)團隊設(shè)計的React Hooks庫,提供了一系列實用的React Hooks,以便開發(fā)者更好地使用React的功能。ahooks的設(shè)計原則是“最小API,最大自由”,旨在提供最小的、最易于理解和使用的API,同時保留最大的使用自由度。 使用npm或yarn安裝ahooks: 1. useRequest useR

    2024年02月12日
    瀏覽(22)
  • 理解React頁面渲染原理,如何優(yōu)化React性能?

    當使用React編寫應(yīng)用程序時,可以使用JSX語法來描述用戶界面的結(jié)構(gòu)。JSX是一種類似于HTML的語法,但實際上它是一種JavaScript的擴展,用于定義React元素。React元素描述了我們想要在界面上看到的內(nèi)容和結(jié)構(gòu)。 在運行React應(yīng)用程序時,JSX會被轉(zhuǎn)換成真實的DOM元素,這個過程主要

    2024年02月08日
    瀏覽(73)
  • 【實戰(zhàn)】 六、用戶體驗優(yōu)化 - 加載中和錯誤狀態(tài)處理(中) —— React17+React Hook+TS4 最佳實踐,仿 Jira 企業(yè)級項目(九)

    學習內(nèi)容來源:React + React Hook + TS 最佳實踐-慕課網(wǎng) 相對原教程,我在學習開始時(2023.03)采用的是當前最新版本: 項 版本 react react-dom ^18.2.0 react-router react-router-dom ^6.11.2 antd ^4.24.8 @commitlint/cli @commitlint/config-conventional ^17.4.4 eslint-config-prettier ^8.6.0 husky ^8.0.3 lint-staged ^13.1.2 p

    2024年02月13日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包