React 中的按钮

17 Mar 2025 | 6 分钟阅读

按钮允许用户通过单击来执行操作和做出选择。

它们(按钮)传达用户可以执行的操作。它放置在 UI 中的如下位置:

  • 模态窗口
  • 形式
  • 卡片
  • 工具栏 (Toolbars)
  • 基本按钮

按钮有 3 种变体:文本(默认)、包含轮廓。

Button in React

文本按钮

文本按钮用于不太明显的动作,包括卡片对话框中的那些。在卡片中,文本按钮将帮助我们保持对卡片内容的强调。

Button in React

包含按钮

包含按钮是高强调的,其特征在于使用海拔和填充。它包含在我们的应用程序中主要使用的操作。

Button in React

您可以使用禁用海拔道具删除海拔。

Button in React

轮廓按钮

轮廓按钮是中等强调按钮。它们包含必要的动作,但不是应用程序中的主要动作。

轮廓按钮是包含按钮的较低替代方案,或文本按钮的较高强调替代方案。

Button in React

处理点击

所有组件都接受应用于根 DOM 元素的 onClick 处理程序。

注意:文档避免在组件的 API 部分提及本机道具。

颜色

Button in React

此外,通过使用默认按钮颜色,您可以添加自定义颜色或禁用任何您不需要的颜色。

大小

使用此属性可用于更大或更小的按钮。

Button in React

上传按钮

Button in React

带有标签和图标的按钮

有时您可能希望某些按钮具有图标,以增强应用程序的 UX,因为我们更容易识别徽标而不是纯文本。

例如,如果我们想要删除按钮,那么应该用垃圾箱图标标记它。

Button in React

图标按钮

图标按钮位于工具栏和应用程序栏中。图标适用于切换按钮,这些按钮允许选择或取消选择选项。 例如,从标签添加或删除任何项目。

Button in React

尺寸

使用 size 道具来在按钮中使用更大或更小的图标。

Button in React

颜色

Button in React

使用 color 道具将主题颜色调色板应用于组件。

定制

Button in React

以下是自定义组件的示例。

加载按钮

加载按钮可以显示加载状态并禁用按钮的交互。

Button in React

切换加载按钮以查看不相关位置之间的过渡。

Button in React

复杂按钮

图标按钮、文本按钮、包含按钮和浮动操作按钮构建到单个组件中,该组件称为 ButtonBase。

Button in React

您可以采用较低级别的组件来创建自定义交互。

第三方路由库

在没有与服务器进行精确 HTTP 传输的情况下导航客户端是一种独特的用例。 ButtonBase 组件提供了组件属性来处理此用例。

边框

ButtonBase 在禁用的按钮上设置组件 pointer-events: none;,这会阻止禁用光标的出现。

如果您想使用"not allowed",您有两个选项

仅 CSS:您可以删除 < Button> 元素的禁用状态下的 pointer-event 样式

虽然,

当您需要在禁用元素上显示工具提示时,您应该添加 pointer-events: none;。

如果您渲染的不是按钮元素,则光标不会改变。 例如,链接 <a> 元素。

DOM 更改。 您可以包装按钮

它可以支持任何元素,例如链接 <a> 元素。

unstyled

该组件将附带未样式化的版本。 它非常适合进行大量优化并减少捆绑包大小。

API

  • <button >
  • <buttonbase >
  • <iconbutton >
  • <loadingButton >

如何在 ReactJS 中使用按钮组件?

按钮允许用户通过一次点击来执行其操作并做出选择。 此组件可用于 React UI 内容,并且非常容易集成。 我们可以使用以下方法在 ReactJS 中使用按钮组件。

创建 react app 和安装模块

步骤 1:使用下面给出的命令构建一个 React 应用程序

步骤 2:创建项目文件夹后,使用给定的命令导航到文件夹名称

步骤 3:使用以下命令安装 Material-UI 模块,在创建 ReactJS 应用程序后

项目结构:它将如下所示。

Button in React

项目结构

App.js:现在,您必须在 App.js 文件中编写以下代码。

在这里,App 是我们代码中编写的默认组件。

JavaScript

运行应用程序的步骤

通过从项目的根目录使用命令来运行应用程序

输出:现在打开您的浏览器并转到 https://:3000/。 您可以看到以下输出

Button in React