iT邦幫忙

2022 iThome 鐵人賽

DAY 15
0
Modern Web

Dear React 修煉之路系列 第 15

(D-15) Dear React 修煉之路:React State -3 | useEffect

  • 分享至 

  • xImage
  •  

useEffect(副作用處理)
副作(side-effect)是什麼意思?是做什麼用的呀?
例如我們在 fetch 資料、訂閱事件、改變 DOM,這些在 render 期間無法完成,卻又會影響其他 component,
稱為是「side effect」。

useEffect使用方法
useEffect(callback, array)

-> callback:回調函式
-> array:使用陣列(array)來控制或執行回調函式
陣列如果是空值,在 render 之後只會執行一次,無法再次觸發
陣列如果有值,會在該 array 發生改變後執行
陣列如果省略,每次渲染時都會執行

import React, { useState, useEffect } from "react";

function Click() {
  const [count, setCount] = useState(0);
  useEffect(() => {
  //更新title,預設會在每次 render 之後都一定會執行
    document.title = `You clicked ${count} times`;
  });

  return (
    <div>
      <p>You clicked {count} times</p>
      <button onClick={() => setCount(count + 1)}>Click me</button>
    </div>
  );
}

export default Click;

當我們使用 useEffect 的時候,這代表我們告訴 React 在 component render 之後需要做一些事情,而 React 會在 render 之後執行我們傳入的 function。


上一篇
(D-14) Dear React 修煉之路:React State -2 | useState
下一篇
(D-16) Dear React 修煉之路:React useEffect - 2
系列文
Dear React 修煉之路30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言