React18之自定義Hook(學習筆記)

自定義Hook函數


概念:自定義Hook是以 use 打頭的函數,通過自定義Hook函數可以用來實現邏輯的封裝和復用

簡單demo

封裝一個useChannel自定義hook

import { useEffect, useState } from 'react';
import { getChannelApi } from '@/apis/article';

export const useChannel = () => {
  const [channelList, setChannelList] = useState([]);
  useEffect(() => {
    const getChannelList = async () => {
      const res = await getChannelApi();
      setChannelList(res.data.channels);
    };
    getChannelList();
  }, []);
  return {
    channelList,
  };
};

在組件中引入并使用

// src/pages/Article/index.jsx
import { useChannel } from '@/hooks/useChannel';
const Article = () => {
  const { channelList } = useChannel();
  return (
    <ul>
      {channelList.map((item) => (
         <li key={item.id}>
           {item.name}
         </li>
      ))}
    </ul>
  )
}
export default Article;
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容