关于react-Ant Design框架Button按钮的基础用法

简介: 最近在学习react-Ant Design框架,把button组件一些基础用法记录一下

前言

最近在学习react-Ant Design框架,把button组件一些基础用法记录一下

引入框架 使用组件

基础按钮

首先我们得导入Ant Design和里面的button,才能进行使用。当然得确保之前在项目中你安装了Ant Design
下面是基础款按钮:

import React, { memo } from 'react'
import { Button } from 'antd'
import './index.scss'

// React.memo是一个高阶组件,memo类似于PureComponent,不同的是,memo是一个function组件
export default memo(function Index() {
  return (
    <div className='wrap'>
      <Card title='基础款按钮' className='button-wrap'>
        <Button>按钮</Button>
        <Button type='primary'>按钮</Button>
        <Button type='danger'>按钮</Button>
        <Button type='dashed'>按钮</Button>
      </Card>
    </div>
  )
})

效果:

在这里插入图片描述

带icon的按钮

还可以导入icon实现带图标的按钮:

import {
  PlusOutlined,
  DeleteOutlined,
  EditOutlined,
  SearchOutlined,
  LeftOutlined,
  RightOutlined
  } from '@ant-design/icons'
<Card title='图表款按钮组' className='button-wrap'>
  <Button icon={<PlusOutlined />}>添加</Button>
  <Button icon={<DeleteOutlined />}>删除</Button>
  <Button icon={<EditOutlined />}>修改</Button>
  <Button icon={<SearchOutlined />}>查找</Button>
  <Button icon={<SearchOutlined />} shape='circle'></Button>
  <Button icon={<SearchOutlined />} shape='round'></Button>
</Card>

效果:

在这里插入图片描述

按钮的loading状态

按钮组件还可以通过loading实现加载的状态,这里我们做一个效果:点击按钮控制另一个按钮的加载状态:

export default memo(function Index() {
  const [loading, setLoadnig] = useState(true)
  return (
    <div className='wrap'>
      <Card title='loading按钮' className='button-wrap'>
        <Button type='primary' loading={loading}>加载中</Button>
        <Button onClick={e=>close()}>关闭加载</Button>
        <Button onClick={e=>open()}>打开加载</Button>
      </Card>
    </div>
  )
  function open() {
    setLoadnig(true)
  }
  function close() {
    setLoadnig(false)
  }
})

实现效果:

在这里插入图片描述

按钮的大小控制

还可以通过size属性修改按钮的大小,这里我们也做一个需求:通过点击单选框选择控制按钮的大小

export default memo(function Index() {
  const [size, setSize] = useState('default')
  return (
    <div className='wrap'>
      <Card title='控制按钮尺寸' className='button-wrap'>
        <Radio.Group value={size} onChange={e=>changeSize(e)}>
          <Radio value='large'>大</Radio>
          <Radio value='default'>中</Radio>
          <Radio value='small'>小</Radio>
        </Radio.Group>
          <Button type='primary' size={size}>金渡教育</Button>
          <Button type='danger' size={size}>金渡教育</Button>
          <Button type='dashed' size={size}>金渡教育</Button>
      </Card>
    </div>
  )
  function changeSize(e) {
    console.log(e)
    setSize(e.target.value)
  }
})

实现效果:

在这里插入图片描述

相关文章
|
22天前
|
开发框架 前端开发 JavaScript
探索前端开发中的跨平台框架React Native
本文将介绍前端开发中一种备受关注的跨平台框架React Native,通过比较原生应用与React Native的优缺点,探讨其在实际项目中的应用以及未来发展趋势。
|
22天前
|
前端开发 网络架构 UED
React Next.js框架
React Next.js 是一个基于 React 的服务器渲染框架,用于构建高性能的现代Web应用。它提供内置的服务器渲染、静态导出、动态路由功能,并自动进行代码拆分。Next.js 还支持热模块替换、CSS-in-JS 和客户端路由,拥有丰富的插件生态系统,简化了开发过程,提升了应用的性能和用户体验。
|
22天前
|
前端开发 JavaScript API
blog-engine-07-gatsby 建极速网站和应用程序 基于React的最佳框架,具备性能、可扩展性和安全性。
探索多种博客引擎:Jekyll, Hugo, Hexo, Pelican, Gatsby, VuePress, Nuxt.js 和 Middleman。了解Gatsby,基于React的静态站点生成器,以其特性如React基础、静态生成、广泛插件支持、简便部署和现代开发流程脱颖而出。安装Gatsby需先安装Node.js,然后通过`gatsby-cli`创建新站点。开发涉及编写页面、本地开发、生成静态文件及部署。尽管Gatsby具有现代化和高性能优势,但也存在学习曲线和配置复杂性的挑战。
|
22天前
|
开发框架 前端开发 JavaScript
【专栏】对比分析两种流行的跨平台开发框架——Flutter和React Native,探讨它们的优势、劣势以及适用场景
【4月更文挑战第27天】本文对比分析了Flutter和React Native两大跨平台移动开发框架。Flutter,由Google推出,以其接近原生的性能、快速启动和流畅滚动受青睐,适合高性能和高度定制的项目。React Native,Facebook维护,依赖JavaScript,虽性能受限,但热重载优势和丰富第三方库使其适合快速迭代的项目。两者都在拓展多平台应用,Flutter在桌面和Web,React Native在Windows。选择框架需考虑项目需求、团队技能和性能效率平衡。
|
22天前
|
前端开发 JavaScript 定位技术
Docusaurus框架——react+antd+echarts自定义mdx生成图表代码解释文档
Docusaurus框架——react+antd+echarts自定义mdx生成图表代码解释文档
36 0
|
22天前
|
前端开发 JavaScript 搜索推荐
react-app框架——使用monaco editor实现online编辑html代码编辑器
react-app框架——使用monaco editor实现online编辑html代码编辑器
54 3
|
22天前
|
前端开发 JavaScript Linux
relectron框架——打包前端vue3、react为pc端exe可执行程序
relectron框架——打包前端vue3、react为pc端exe可执行程序
44 1
|
22天前
|
存储 人工智能 开发框架
【AI大模型应用开发】【AutoGPT系列】0. AutoGPT概念及原理介绍 - Agent开发框架及ReAct方法
【AI大模型应用开发】【AutoGPT系列】0. AutoGPT概念及原理介绍 - Agent开发框架及ReAct方法
57 0
|
22天前
|
JavaScript 前端开发
【干货分享】选择 Vue 还是 React?项目框架选择的实际分析
【干货分享】选择 Vue 还是 React?项目框架选择的实际分析
|
22天前
|
前端开发 JavaScript Android开发
框架分析(8)-React Native
框架分析(8)-React Native