網(wǎng)站首頁 編程語言 正文
1 antd 之 Button API
antd
組件庫是基于 Ant Design 設(shè)計體系的 React UI 組件庫,antd
為 Web 應用提供了豐富的基礎(chǔ) UI 組件,可以用于研發(fā)企業(yè)級中后臺產(chǎn)品。這篇咱們介紹 antd 組件庫之 按鈕。
按鈕 Button 是一個比較基礎(chǔ)的 UI 組件,一般在有交互的應用中都會用到。
其 DOM 節(jié)點為 <Button>...</Button>
,antd 中的按鈕樣式豐富,可以通過設(shè)置 Button 的屬性來產(chǎn)生不同的 按鈕樣式。
這些可配置的屬性主要包括:type、shape、size、loading 等,詳細的這里我進行一個整理:
下面做一些實踐。
2 antd 之 Button 示例
先來看 type 屬性的六個簡單的按鈕,上代碼 (JavaScript的):
import { Button } from 'antd'; import React from 'react'; const App = () => ( <> <Button type="primary">Primary Button</Button> <Button>Default Button</Button> <Button type="dashed">Dashed Button</Button> <br /> <Button type="text">Text Button</Button> <Button type="link">Link Button</Button> <Button type="ghost">Ghost Button</Button> </> ); export default App;
來看效果:
接下來看一波帶 icon 圖標的按鈕,上代碼:
import { SearchOutlined, PlayCircleOutlined, ZoomInOutlined, RedoOutlined, AndroidOutlined, AppleOutlined, WechatOutlined, EyeOutlined, ShareAltOutlined, MessageOutlined} from '@ant-design/icons'; import { Button, Tooltip } from 'antd'; import React from 'react'; const App = () => ( <> <Tooltip title="search"> <Button type="primary" shape="circle" icon={<PlayCircleOutlined />} /> </Tooltip> <Button type="primary" shape="circle"> A </Button> <Button type="primary" icon={<ZoomInOutlined />}> Search </Button> <Tooltip title="search"> <Button shape="circle" icon={<RedoOutlined />} /> </Tooltip> <Button icon={<AndroidOutlined />}>Search</Button> <br /> <Tooltip title="search"> <Button shape="circle" icon={<SearchOutlined />} /> </Tooltip> <Button icon={<SearchOutlined />}>Search</Button> <Tooltip title="search"> <Button type="dashed" shape="circle" icon={<SearchOutlined />} /> </Tooltip> <Button type="dashed" icon={<SearchOutlined />}> Search </Button> <Button icon={<SearchOutlined />} /> <br /> <br /> <Tooltip title="search"> <Button type="primary" shape="circle" icon={<AppleOutlined />} size="large" /> </Tooltip> <Button type="primary" shape="circle" size="large"> A </Button> <Button type="primary" icon={<WechatOutlined />} size="large"> Search </Button> <Tooltip title="search"> <Button shape="circle" icon={<SearchOutlined />} size="large" /> </Tooltip> <Button icon={<EyeOutlined />} size="large"> Search </Button> <br /> <Tooltip title="search"> <Button shape="circle" icon={<SearchOutlined />} size="large" /> </Tooltip> <Button icon={<ShareAltOutlined />} size="large"> Search </Button> <Tooltip title="search"> <Button type="dashed" shape="circle" icon={<SearchOutlined />} size="large" /> </Tooltip> <Button type="dashed" icon={<SearchOutlined />} size="large"> Search </Button> <Button icon={<MessageOutlined />} size="large" /> </> ); export default App;
來看效果:
你應該可以發(fā)現(xiàn),我這里用了很多不同的 icon 圖標,可以這么說:用 antd 的 Button 搭配 antd 的 Icon 圖標,幾乎能實現(xiàn)你想要的所有按鈕樣式。除了按鈕的圖標,上面的示例也演示了 按鈕 Size 的調(diào)整,通過 size
可以配置 large
和 small
, 分別對應將按鈕設(shè)置為 大尺寸和 小尺寸,若不設(shè)置 size
, 則默認為中尺寸。
接著,我們來看按鈕的 disabled
屬性,意思即為按鈕處于不可用的狀態(tài),上代碼:
import { Button } from 'antd'; import React from 'react'; const App = () => ( <> <Button type="primary">Primary</Button> <Button type="primary" disabled> Primary(disabled) </Button> <br /> <Button>Default</Button> <Button disabled>Default(disabled)</Button> <br /> <Button type="dashed">Dashed</Button> <Button type="dashed" disabled> Dashed(disabled) </Button> <br /> <Button type="text">Text</Button> <Button type="text" disabled> Text(disabled) </Button> <br /> <Button type="link">Link</Button> <Button type="link" disabled> Link(disabled) </Button> <br /> <Button danger>Danger Default</Button> <Button danger disabled> Danger Default(disabled) </Button> <br /> <Button danger type="text"> Danger Text </Button> <Button danger type="text" disabled> Danger Text(disabled) </Button> <br /> <Button type="link" danger> Danger Link </Button> <Button type="link" danger disabled> Danger Link(disabled) </Button> <div className="site-button-ghost-wrapper"> <Button ghost>Ghost</Button> <Button ghost disabled> Ghost(disabled) </Button> </div> </> ); export default App;
來看效果:
還有一種按鈕是,點擊后服務器需要響應一會兒,即加載狀態(tài),這個 Loding... 的狀態(tài)用 antd 的按鈕也可以展現(xiàn),上代碼:
import { PoweroffOutlined } from '@ant-design/icons'; import { Button, Space } from 'antd'; import React, { useState } from 'react'; const App = () => { const [loadings, setLoadings] = useState([]); const enterLoading = (index) => { setLoadings((prevLoadings) => { const newLoadings = [...prevLoadings]; newLoadings[index] = true; return newLoadings; }); setTimeout(() => { setLoadings((prevLoadings) => { const newLoadings = [...prevLoadings]; newLoadings[index] = false; return newLoadings; }); }, 6000); }; return ( <> <Space style={{ width: '100%', }} > <Button type="primary" loading> Loading </Button> <Button type="primary" size="small" loading> Loading </Button> <Button type="primary" icon={<PoweroffOutlined />} loading /> </Space> <Space style={{ width: '100%', }} > <Button type="primary" loading={loadings[0]} onClick={() => enterLoading(0)}> Click me! </Button> <Button type="primary" icon={<PoweroffOutlined />} loading={loadings[1]} onClick={() => enterLoading(1)} > Click me! </Button> <Button type="primary" icon={<PoweroffOutlined />} loading={loadings[2]} onClick={() => enterLoading(2)} /> </Space> </> ); }; export default App;
來看效果:
好了,以上分享了 Ant Design 組件庫之按鈕。希望我的分享能對你的學習有一點幫助。
原文鏈接:https://juejin.cn/post/7130889964748800037
相關(guān)推薦
- 2022-09-25 CSS-解決因子元素浮動引起的父元素高度塌陷問題
- 2023-10-15 動態(tài)演示操作系統(tǒng)進程調(diào)度算法,F(xiàn)CFS, RR, SPN, SRT, HRRN
- 2022-02-17 ERROR: but there is no HDFS_NAMENODE_USER defined.
- 2022-07-31 深入了解Go的interface{}底層原理實現(xiàn)_Golang
- 2022-03-09 c++中STL庫隊列詳細介紹_C 語言
- 2022-10-17 Kotlin編程循環(huán)控制示例詳解_Android
- 2024-07-13 SpringBoot入門(解決JDK8不存在問題)
- 2023-01-29 python?pandas?解析(讀取、寫入)CSV?文件的操作方法_python
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細win安裝深度學習環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支