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;
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容