亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

詳解react如何實現復合組件

 更新時間:2024年10月30日 08:49:45   作者:omijer  
在一些react項目開發(fā)中,常常會出現一些組合的情況出現,這篇文章主要為大家介紹了復合組件的具體實現,感興趣的小伙伴可以跟隨小編一起學習一下

需求點

在一些react項目開發(fā)中,常常會出現一些組合的情況出現,比如一個card組件中,可能有以下幾個組合功能

  • Haeder組件
  • Content組件
  • Footer組件

用戶需要在不同的環(huán)境下去使用card組件,可能不需要Header或者footer, 這種情況下,常見的條件渲染會使組件的邏輯變得復雜與難于組合,因此,復合組件的方式就是為了解決以上需求

具體實現

1.使用vite創(chuàng)建工程

npm init vite@latest

2.創(chuàng)建components文件夾,創(chuàng)建Card.tsx組件

import { PropsWithChildren } from "react";
import { CardProps } from "./type";
import "./card.css";

const Card = ({ children }: CardProps) => {

    return <div className="card">{children}</div>;

};


// card header

Card.Haeder = ({ children }: PropsWithChildren) => {

    return (
        <div className="header">
            <span>{children}</span>
        </div>
    );
};
 
// card content
Card.Content = ({ children }: PropsWithChildren) => {
    return <div className="content">{children}</div>;
};

// card footer
Card.Footer = ({ children }: PropsWithChildren) => {
    return <div className="footer">{children}</div>;
};

export default Card;

實現效果

1.在App組件中組合使用

import Card from "./components/Card";

function App() {
    return (
        <div className="app">
            <Card>
                <Card.Haeder>card標題</Card.Haeder>
                <Card.Content>neirong</Card.Content>
                <Card.Footer>
                    <div className="footer-btn">
                        <button>取消</button>
                        <button>確認</button>
                    </div>
                </Card.Footer>
            </Card>
        </div>
        );
 }

export default App;

2.組件效果

總結

利用了js函數是一個對象的特性,為主函數增加組合的屬性,在組件使用的時候,可以方便的組合使用

使用了children props,可以方便使用者將任意的結構傳入組件內部

可以繼續(xù)擴展在復合組件內部使用context, 全局管理組件,可以管理組件內部的狀態(tài)

到此這篇關于詳解react如何實現復合組件的文章就介紹到這了,更多相關react實現復合組件內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • React實現類似淘寶tab居中切換效果的示例代碼

    React實現類似淘寶tab居中切換效果的示例代碼

    這篇文章主要介紹了React實現類似淘寶tab居中切換效果,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • React實現圖片縮放的示例代碼

    React實現圖片縮放的示例代碼

    這篇文章主要為大家詳細介紹了如何使用React實現圖片縮放的功能,文中的示例代碼講解詳細,具有一定的參考價值,感興趣的小伙伴可以了解下
    2023-10-10
  • React實現下拉框的key,value的值同時傳送

    React實現下拉框的key,value的值同時傳送

    這篇文章主要介紹了React實現下拉框的key,value的值同時傳送方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • React組件重構之嵌套+繼承及高階組件詳解

    React組件重構之嵌套+繼承及高階組件詳解

    這篇文章主要給大家介紹了關于React組件重構之嵌套+繼承及高階組件的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-07-07
  • react結合bootstrap實現評論功能

    react結合bootstrap實現評論功能

    這篇文章主要為大家詳細介紹了react結合bootstrap實現評論功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • react+typescript中使用echarts的實現步驟

    react+typescript中使用echarts的實現步驟

    本文主要介紹了react+typescript中使用echarts的實現步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • ReactHook使用useState更新變量后,如何拿到變量更新后的值

    ReactHook使用useState更新變量后,如何拿到變量更新后的值

    這篇文章主要介紹了ReactHook使用useState更新變量后,如何拿到變量更新后的值問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • React?中如何將CSS?visibility?屬性設置為?hidden

    React?中如何將CSS?visibility?屬性設置為?hidden

    這篇文章主要介紹了React中如何將CSS?visibility屬性設置為?hidden,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-05-05
  • 一文搞懂?React?18?中的?useTransition()?與?useDeferredValue()

    一文搞懂?React?18?中的?useTransition()?與?useDeferredValue()

    這篇文章主要介紹了一文搞懂?React?18?中的?useTransition()與useDeferredValue(),文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • React如何創(chuàng)建組件

    React如何創(chuàng)建組件

    本文我們將介紹 React中組件的類別,以及如何創(chuàng)建和使用組件。具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06

最新評論