网站地图    收藏   

主页 > 前端 > react >

react-memo缓存组件

来源:未知    时间:2024-05-12 20:17 作者:小飞侠 阅读:

[导读] react函数组件方式如何缓存? 可以利用memo方法去缓存,具体代码如下: importReact,{memo,useEffect,useState}fromreactfunctionShowName({name,index}){console.log(showNamerender...)returndiv----{name}{index}/div}constSh...

react函数组件方式如何缓存?

可以利用memo方法去缓存,具体代码如下:

当ShowName只出现name时候,因为改变的是index所以ShowName组件不会重载

import React, { memo, useEffect, useState } from 'react'

function ShowName({name}) {
    console.log('showName render...')
    return <div>----{name}{index}</div>
}

const ShowNameMemo = memo(ShowName)

export default function App() {

    const [index, setIndex] = useState(0)
    const [name] = useState('张三')
    // 
    useEffect(() => {
        setInterval(() => {
            setIndex(prev => prev + 1)
        }, 1000)
    }, [])
    return (
        <div>
            App{index}
            <ShowNameMemo name={name} />
        </div>
    )
}

会改变的列子

import React, { memo, useEffect, useState } from 'react'

function ShowName({name, index}) {
    console.log('showName render...')
    return <div>----{name}{index}</div>
}

const ShowNameMemo = memo(ShowName)

export default function App() {

    const [index, setIndex] = useState(0)
    const [name] = useState('张三')
    // 
    useEffect(() => {
        setInterval(() => {
            setIndex(prev => prev + 1)
        }, 1000)
    }, [])
    return (
        <div>
            App{index}
            <ShowNameMemo name={name} index={index} />
        </div>
    )
}


自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论