日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

React中的useEffect四種用法分享

瀏覽:40日期:2022-06-13 09:41:17
目錄什么是 useEffect ?1 : useEffect 中 觸發(fā)更新2 : 用法2 重復(fù)的 useEffect3 :依賴值觸發(fā)回調(diào)4 :useEffect 的返回值結(jié)束啦什么是 useEffect ?

官方解釋 : useEffect 是一個 React Hook,它允許你將組件與外部系統(tǒng)同步。

什么意思 ? 個人理解就是 它能根據(jù)不同的依賴值或者返回值,在不同的時機(jī)進(jìn)行執(zhí)行。

我們先來說說 第一種用法

1 : useEffect 中 觸發(fā)更新

示例1 : 當(dāng)我們在組件創(chuàng)建的過程,自動執(zhí)行某些操作的時候 , 那我們可以在函數(shù)式組件中這樣

錯誤示例

import { useEffect } from 'react'function App () {const [ count , setCount] = useState(0)useEffect(()=> { initData()})const initData = () => { setCount(count + 1)}return ( <div> {count} </div> )}

如果你這種用 useEffect 你會發(fā)現(xiàn) 什么問題 ?

當(dāng)我們組件 渲染完成去執(zhí)行 useEffect 調(diào)用 initData 函數(shù) 函數(shù)通過 setCount 設(shè)置值觸發(fā)更新,一旦更新 useEffect 又會在渲染的最后執(zhí)行,這樣就照成了 死循環(huán)

所以 你應(yīng)該這樣寫 ,傳入 useEffect 第二個參數(shù) 空數(shù)組,代表組件渲染過程中只執(zhí)行一次

正確示例

import { useEffect } from 'react'function App () {const [ count , setCount] = useState(0)useEffect(()=> { initData()}, [])const initData = () => {setCount(count + 1)}return ( <div> {count} </div> )}2 : 用法2 重復(fù)的 useEffect

示例2 : 當(dāng)我們在組件渲染的過程中 ,如果你寫了多個useEffect 它會怎么做 ?

import { useEffect, useState } from 'react';function Effect() { const [count, setCount] = useState(0) useEffect(() => { console.log('111'); }) useEffect(() => { console.log('222'); }) return (<div> {count} </div>)}export default Effect

想當(dāng)然 , 它不會覆蓋前面的 useEffect ,會根據(jù)你的 編寫順序進(jìn)行收集,然后循環(huán)執(zhí)行(當(dāng)然這只是我的猜測,暫時還沒看react源碼)

3 :依賴值觸發(fā)回調(diào)

當(dāng)你想去依賴某些變量的時候去觸發(fā)回調(diào)函數(shù),你可以這樣。

import { useEffect, useState } from 'react';function Effect() { const [count, setCount] = useState(0) useEffect(() => { console.log('count發(fā)生了變化最新值為' + count); }, [count]) return (<div> <div> {count} </div> <button onClick={() => setCount(count + 1)}>加1</button> </div>)}export default Effect

當(dāng)你的第二個參數(shù)是數(shù)組,并且是依賴項(xiàng),組件初次渲染也會執(zhí)行,這是為什么呢 ?

解答 : 如果從 react useState Hook 來說,也就是 react 將你傳入的 默認(rèn)值 給你重新賦值了,所以發(fā)生了變化,因此 useEffect 發(fā)生了更新

4 :useEffect 的返回值

當(dāng)useEffect 傳入的 回調(diào)函數(shù)有返回值時并且為一個 函數(shù)的時候,它會怎么做?

import { useEffect, useState } from 'react';const Room = () => { useEffect(() => { console.log('子組件渲染完成') return () => { console.log('子組件useeffect 回調(diào)函數(shù)執(zhí)行') } }, []) return (<div> 這是我的房間 , 大家一起來玩呀 </div>)}function Effect() { const [show, setShow] = useState(true) return (<div> <div> {show && <Room></Room>} </div> <button onClick={() => setShow(!show)}>加1</button> </div>)}export default Effect

解答 : useEffect函數(shù) 的返回值 如果是函數(shù)時 它會在組件銷毀的時候自動回調(diào)該函數(shù),你可以在該函數(shù)中做一些清理操作,等等

結(jié)束啦

好了,最后到這次本章了解的知識就到此結(jié)束了,如果有哪里寫的不對的地方或者有更好的使用方式,歡迎大家在評論區(qū)留言!

到此這篇關(guān)于React中的useEffect四種用法分享的文章就介紹到這了,更多相關(guān)React useEffect用法內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: JavaScript
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产盗摄——sm在线视频| 久久九九电影| 日韩视频不卡| 婷婷丁香综合| 欧美成人午夜| 色老板在线视频一区二区| 91亚洲国产| 日韩一区电影| 亚洲va中文在线播放免费| 欧美日韩国产v| 日本久久成人网| 亚洲天堂久久| 99综合视频| 人人精品人人爱| 久久国产精品亚洲77777| 麻豆91精品视频| 国模大尺度视频一区二区| 成人午夜网址| 快播电影网址老女人久久| 欧美午夜精彩| 欧美专区18| 日本电影久久久| 你懂的国产精品| 精品精品国产三级a∨在线| 成午夜精品一区二区三区软件| 国产精品成久久久久| 97精品一区二区| 欧美成人亚洲| 亚洲精品在线国产| 日韩av网站免费在线| 麻豆国产精品视频| 日韩一区电影| 国产色综合网| 欧美亚洲一级| 国产精品伦理久久久久久| 久久婷婷丁香| 亚洲人妖在线| 国产一区福利| 黄色网一区二区| 免费观看不卡av| 日韩和欧美的一区| 成人片免费看| 久热re这里精品视频在线6| 国产欧美一级| 日韩欧美精品综合| 丝袜美腿亚洲色图| 国产一区日韩| 乱人伦精品视频在线观看| 国产欧美一区二区色老头| 日韩av首页| 日韩精品一区二区三区中文| 国产精品蜜芽在线观看| 只有精品亚洲| 日韩综合在线| 免费精品视频| 美女精品一区二区| 午夜在线精品偷拍| 精品伊人久久| 久久亚洲一区| 国产91在线精品| 亚洲一区有码| 综合日韩av| 亚洲欧美专区| 日韩电影免费在线观看| 亚洲三级在线| 9999国产精品| 日韩高清电影一区| 久久精品国产68国产精品亚洲| 日韩中文字幕一区二区高清99| 国产精品高颜值在线观看| 日韩精品欧美大片| 国产综合欧美| 精品一二三区| 蜜臀久久99精品久久久久宅男| 精品国产欧美| 视频一区中文字幕精品| 成人在线网站| 国产欧美日韩在线一区二区| 激情婷婷亚洲| 成人精品高清在线视频| 日韩精品欧美大片| 国产韩日影视精品| 91中文字幕精品永久在线| 久久国产生活片100| 亚洲欧美日韩国产一区| 91一区二区三区四区| 久久国产精品免费精品3p| 午夜久久影院| 天堂av在线| 国产精品永久| 亚洲久久一区| 欧美日韩三区| 亚洲精品国产嫩草在线观看| 国产精品极品国产中出| 亚洲精品韩国| 老色鬼久久亚洲一区二区| 激情婷婷久久| 亚洲最新无码中文字幕久久| 久久精品理论片| 国产精品美女在线观看直播| 日韩欧美激情电影| 亚洲视频二区| 免费看欧美美女黄的网站| 免费日韩av片| 国产真实久久| 三上悠亚国产精品一区二区三区| 精品国产麻豆| 久久精品国产99| 免费在线日韩av| 久久的色偷偷| 国产精品亚洲产品| 久久国际精品| 久久精品超碰| 欧美三级第一页| 欧美亚洲二区| 91精品国产一区二区在线观看| 亚洲精品乱码日韩| 少妇精品久久久一区二区| 亚洲午夜免费| 日本一区二区中文字幕| 久久福利一区| 免费精品视频最新在线| 亚洲人成在线影院| 日韩一区二区三免费高清在线观看 | 欧美一区不卡| 日韩三级久久| 日韩av午夜在线观看| 91亚洲精品在看在线观看高清| 亚洲精品韩国| 亚洲天堂日韩在线| 日韩一区二区三区精品| 日韩av不卡在线观看| 国产欧美日韩影院| 精品视频一区二区三区在线观看| 久久香蕉网站| а√天堂中文在线资源8| 色网在线免费观看| 99精品综合| 一本色道精品久久一区二区三区| 亚洲一区二区免费看| 亚洲精品观看| 欧美日本一区| 久久精品国产福利| 日韩欧美一区二区三区免费观看| 秋霞国产精品| 蜜乳av另类精品一区二区| 亚洲精品第一| 国产精品1luya在线播放| 91亚洲人成网污www| 欧美一区三区| 视频一区二区不卡| 欧美视频久久| 亚洲黄色免费av| 亚洲一区国产| 国产视频一区二区在线播放| 国产夫妻在线| 一区在线免费观看| 日韩精品第一| 激情不卡一区二区三区视频在线| 一区二区精品伦理...| 伊人精品在线| 国产日韩欧美在线播放不卡| 丁香婷婷久久| 欧美日韩三区| 国产精品天堂蜜av在线播放| 日韩高清成人| 亚洲色图网站| 精品少妇一区| 国产精品日韩久久久| 国产亚洲久久| 久久国产电影| 日韩三级久久| 国产日韩电影| 蜜臀av亚洲一区中文字幕| 日本在线视频一区二区| 97精品国产一区二区三区 | 日韩中文字幕无砖| 精品91福利视频| 国产亚洲精品久久久久婷婷瑜伽| 日本综合精品一区| 超碰超碰人人人人精品| 亚洲影院天堂中文av色| 国产精品nxnn| 在线国产一区二区| 国产精品成人**免费视频| 欧美va天堂| 欧美日韩一区二区国产| 久久男人天堂| 亚洲开心激情| 成人在线视频区| 黄色日韩在线| 精品资源在线| 免费看精品久久片| 国际精品欧美精品| 日韩精品一级二级 | 色吊丝一区二区| 欧美一区二区三区久久| 国产va免费精品观看精品视频| 亚洲激情二区| 老司机免费视频一区二区三区|