最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

React使用UI(Ant?Design)框架的詳細(xì)過程

 更新時(shí)間:2023年12月15日 10:54:31   作者:Etc.End  
Ant?Design主要用于中后臺(tái)系統(tǒng)的使用,它提供了豐富的組件和工具,可以幫助開發(fā)人員快速構(gòu)建出美觀、易用的界面,同時(shí),Ant?Design還提供了詳細(xì)的文檔和示例,方便開發(fā)者學(xué)習(xí)和使用,這篇文章主要介紹了React使用UI(Ant?Design)框架,需要的朋友可以參考下

一、專欄介紹 

歡迎加入本專欄!本專欄將引領(lǐng)您快速上手React,讓我們一起放棄放棄的念頭,開始學(xué)習(xí)之旅吧!我們將從搭建React項(xiàng)目開始,逐步深入講解最核心的hooks,以及React路由、請(qǐng)求、組件封裝以及UI(Ant Design)框架的使用。讓我們一起掌握React,開啟前端開發(fā)的全新篇章!

二、Ant Design 

antd 是基于 Ant Design 設(shè)計(jì)體系的 React UI 組件庫(kù),主要用于研發(fā)企業(yè)級(jí)中后臺(tái)產(chǎn)品。

Ant Design是螞蟻金服團(tuán)隊(duì)推出的一款企業(yè)級(jí)UI設(shè)計(jì)語言和React組件庫(kù),旨在為開發(fā)者和設(shè)計(jì)師提供更優(yōu)秀、更完整的設(shè)計(jì)解決方案。它能夠滿足現(xiàn)代企業(yè)復(fù)雜的設(shè)計(jì)需求,以細(xì)致和完整的將用戶體驗(yàn)融入服務(wù)里,從而實(shí)現(xiàn)極致的交互效果和服務(wù)質(zhì)量。

Ant Design主要用于中后臺(tái)系統(tǒng)的使用,它提供了豐富的組件和工具,可以幫助開發(fā)人員快速構(gòu)建出美觀、易用的界面。同時(shí),Ant Design還提供了詳細(xì)的文檔和示例,方便開發(fā)者學(xué)習(xí)和使用。

總的來說,Ant Design是一款非常優(yōu)秀的UI設(shè)計(jì)和開發(fā)工具,可以幫助企業(yè)和開發(fā)者提高工作效率和質(zhì)量。

三、安裝依賴 

npm install antd --save

四、使用 

在React中使用UI組件通常比在Vue中更為直接和簡(jiǎn)便。當(dāng)我們?cè)赗eact中安裝好Ant Design UI框架后,我們可以在組件內(nèi)部直接引用和使用這些組件,無需像在Vue中那樣進(jìn)行額外的注冊(cè)和引入。這種簡(jiǎn)潔的組件使用方式使得開發(fā)過程更加高效,減少了不必要的步驟,使得開發(fā)人員能夠更快地構(gòu)建出用戶界面。

import React from 'react';
import { useAppSelector } from '../../hooks/useAppSelector';
import { selectUserInfo } from '../../store/userInfo';
import { Alert, Button, Descriptions, DescriptionsProps, message } from 'antd';
const Home: React.FC = () => {
  const userInfo = useAppSelector((state) => state.userInfo);
  const items: DescriptionsProps['items'] = [
    {
      key: '1',
      label: '姓名',
      children: <span>{userInfo.name}</span>,
    },
    {
      key: '2',
      label: '年齡',
      children: <span>{userInfo.age}</span>,
    },
  ];
  return (
    <>
      <div
        style={{
          width: '100%',
          height: '100%',
        }}
      >
        <Alert
          message="Success Tips"
          description="這里是首頁(yè)Home,路由/,當(dāng)前的用戶信息是"
          type="success"
          showIcon
        />
        <Descriptions title="User Info" items={items} />
        <Button
          type={'primary'}
          onClick={async () => {
            message.success('成功獲取用戶信息');
            console.log('??????-----------------', selectUserInfo({ userInfo }).name);
          }}
        >
          獲取用戶信息的name
        </Button>
      </div>
    </>
  );
};
export default Home;

import React from 'react';
import { useAppSelector } from '../hooks/useAppSelector';
import { useAppDispatch } from '../hooks/useAppDispatch';
import { initWhole, updateAge, updateName, updateWhole } from '../store/userInfo';
import { Button, Descriptions, DescriptionsProps, Space } from 'antd';
const ReduxDemo: React.FC = () => {
  const userInfo = useAppSelector((state) => state.userInfo);
  const dispatch = useAppDispatch();
  const items: DescriptionsProps['items'] = [
    {
      key: '1',
      label: '姓名',
      children: <span>{userInfo.name}</span>,
    },
    {
      key: '2',
      label: '年齡',
      children: <span>{userInfo.age}</span>,
    },
  ];
  return (
    <>
      <div>
        <Descriptions items={items} />
        <Space>
          <Button type={'primary'} onClick={() => dispatch(initWhole())}>
            初始化用戶信息
          </Button>
          <Button type={'primary'} onClick={() => dispatch(updateWhole({ name: '王五', age: 23 }))}>
            更改用戶信息
          </Button>
          <Button type={'primary'} onClick={() => dispatch(updateName('張三'))}>
            更改名稱
          </Button>
          <Button type={'primary'} onClick={() => dispatch(updateAge(26))}>
            更改年齡
          </Button>
        </Space>
      </div>
    </>
  );
};
export default ReduxDemo;

五、使用表單 

import React from 'react';
import { useAppSelector } from '../hooks/useAppSelector';
import { useAppDispatch } from '../hooks/useAppDispatch';
import { updateName } from '../store/userInfo';
import { Button, Checkbox, Descriptions, DescriptionsProps, Form, Input, Space } from 'antd';
const ReduxDemo: React.FC = () => {
  const userInfo = useAppSelector((state) => state.userInfo);
  const dispatch = useAppDispatch();
  type FieldType = {
    name: string;
    password?: string;
    remember?: string;
  };
  const items: DescriptionsProps['items'] = [
    {
      label: '用戶名',
      children: <span>{userInfo.name}</span>,
    },
    {
      label: '年齡',
      children: '28',
    },
  ];
  return (
    <>
      <Descriptions
        title="當(dāng)前用戶信息"
        bordered
        column={{ xs: 1, sm: 2, md: 3, lg: 3, xl: 4, xxl: 4 }}
        items={items}
      />
      <Form<FieldType>
        name="basic"
        labelCol={{ span: 8 }}
        wrapperCol={{ span: 16 }}
        style={{ maxWidth: 600 }}
        initialValues={{ remember: true }}
        onFinish={(values) => {
          console.log('??????-----------------', values);
          dispatch(updateName(values.name));
        }}
        onFinishFailed={(errorInfo) => {
          console.log('??????-----------------', errorInfo);
        }}
        autoComplete="off"
      >
        <Form.Item<FieldType>
          label="用戶名"
          name="name"
          rules={[{ required: true, message: '請(qǐng)輸入用戶名!' }]}
        >
          <Input />
        </Form.Item>
        <Form.Item<FieldType>
          label="密碼"
          name="password"
          rules={[{ required: true, message: '請(qǐng)輸入密碼!' }]}
        >
          <Input.Password />
        </Form.Item>
        <Form.Item<FieldType>
          name="remember"
          valuePropName="checked"
          wrapperCol={{ offset: 8, span: 16 }}
        >
          <Checkbox>記住我</Checkbox>
        </Form.Item>
        <Form.Item wrapperCol={{ offset: 8, span: 16 }}>
          <Space>
            <Button type="primary" htmlType="submit">
              提交
            </Button>
            <Button type="primary" htmlType="reset">
              重置
            </Button>
          </Space>
        </Form.Item>
      </Form>
    </>
  );
};
export default ReduxDemo;

六、總結(jié) 

Ant Design還是是很重要的。它是一個(gè)成熟的前端框架,提供了豐富的組件庫(kù),包括按鈕、表單、表格、圖標(biāo)、菜單、對(duì)話框等等,可以滿足各種常見的界面需求。此外,它還支持國(guó)際化,可以根據(jù)不同的語言和地區(qū)自動(dòng)切換組件的文本和樣式。 因此,對(duì)于前端開發(fā)人員來說,學(xué)習(xí)Ant Design是非常有必要的。它可以幫助你提高開發(fā)效率和質(zhì)量,打造出令用戶滿意的前端應(yīng)用。同時(shí),Ant Design的活躍社區(qū)和豐富的案例教程也可以幫助你學(xué)習(xí)和交流。

本專欄的學(xué)習(xí)旅程已暫時(shí)告一段落,接下來,我們將開啟全新的React進(jìn)階之旅。在這個(gè)過程中,我們將深入學(xué)習(xí)使用Umi Max框架,同時(shí)掌握Ant Design Pro模板的使用精髓。對(duì)于僅僅是React初學(xué)者的你,也無需擔(dān)憂,因?yàn)榻酉聛淼膶趦?nèi)容將寫得深入淺出,注重實(shí)踐,以確保每位讀者都能輕松理解并掌握。期待與你共同探索React的更多精彩之處!

到此這篇關(guān)于React使用UI(Ant Design)框架的文章就介紹到這了,更多相關(guān)React使用UI框架內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • React使用highlight.js Clipboard.js實(shí)現(xiàn)代碼高亮復(fù)制

    React使用highlight.js Clipboard.js實(shí)現(xiàn)代碼高亮復(fù)制

    這篇文章主要為大家介紹了React使用highlight.js Clipboard.js實(shí)現(xiàn)代碼高亮復(fù)制功能示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • React技巧之中斷map循環(huán)的方法詳解

    React技巧之中斷map循環(huán)的方法詳解

    這篇文章主要和大家來分享一下React的技巧之如何中斷map循環(huán),文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以了解一下
    2023-06-06
  • React?中state與props更新深入解析

    React?中state與props更新深入解析

    這篇文章主要為大家介紹了React?中state與props更新深入解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • react中hooks使用useState的更新不觸發(fā)dom更新問題及解決

    react中hooks使用useState的更新不觸發(fā)dom更新問題及解決

    這篇文章主要介紹了react中hooks使用useState的更新不觸發(fā)dom更新問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • React之關(guān)于Promise的用法

    React之關(guān)于Promise的用法

    這篇文章主要介紹了React之關(guān)于Promise的用法及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 自己動(dòng)手封裝一個(gè)React Native多級(jí)聯(lián)動(dòng)

    自己動(dòng)手封裝一個(gè)React Native多級(jí)聯(lián)動(dòng)

    這篇文章主要介紹了自己動(dòng)手封裝一個(gè)React Native多級(jí)聯(lián)動(dòng),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-09-09
  • React + webpack 環(huán)境配置的方法步驟

    React + webpack 環(huán)境配置的方法步驟

    本篇文章主要介紹了React + webpack 環(huán)境配置的方法步驟,詳解的介紹了開發(fā)環(huán)境的配置搭建,有興趣的可以了解一下
    2017-09-09
  • React和Vue中實(shí)現(xiàn)錨點(diǎn)定位功能

    React和Vue中實(shí)現(xiàn)錨點(diǎn)定位功能

    在React中,可以使用useState和useEffect鉤子來實(shí)現(xiàn)錨點(diǎn)定位功能,在Vue中,可以使用指令來實(shí)現(xiàn)錨點(diǎn)定位功能,在React和Vue中實(shí)現(xiàn)錨點(diǎn)定位功能的方法略有不同,下面我將分別介紹,文中通過代碼示例介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01
  • react項(xiàng)目如何使用iconfont的方法步驟

    react項(xiàng)目如何使用iconfont的方法步驟

    這篇文章主要介紹了react項(xiàng)目如何使用iconfont的方法步驟,這里介紹下如何在項(xiàng)目中配置。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-03-03
  • React 中合成事件的實(shí)現(xiàn)示例

    React 中合成事件的實(shí)現(xiàn)示例

    本文主要介紹了React 中合成事件的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-02-02

最新評(píng)論

丰顺县| 泸溪县| 清河县| 六枝特区| 瑞金市| 阿勒泰市| 惠安县| 南漳县| 栖霞市| 上栗县| 鄂伦春自治旗| 临武县| 丘北县| 阳朔县| 雅安市| 桂阳县| 海盐县| 山阴县| 长武县| 通海县| 宁阳县| 榆树市| 澄城县| 葫芦岛市| 桃园市| 六枝特区| 东莞市| 莱西市| 馆陶县| 莱阳市| 石柱| 镇远县| 沁源县| 岳阳市| 吉木乃县| 桂东县| 西和县| 南和县| 南安市| 紫金县| 普宁市|