跳到主要内容跳到主要内容

IconButtonAPI

React IconButton 组件的 API 参考文档。了解此导出模块的 props、CSS 和其他 API。

演示

导入

import IconButton from '@mui/joy/IconButton';
// or
import { IconButton } from '@mui/joy';

阅读关于最小化 bundle 大小的指南,了解它们之间的区别。

Props

名称类型默认值描述
actionfunc
| { current?: { focusVisible: func } }
-

用于命令式操作的 ref。目前仅支持 focusVisible() 操作。

color'danger'
| 'neutral'
| 'primary'
| 'success'
| 'warning'
| string
'neutral'

组件的颜色。它支持适用于此组件的那些主题颜色。

要了解如何添加您自己的颜色,请查看主题组件—扩展颜色

componentelementType-

用于根节点的组件。可以是用于 HTML 元素的字符串或组件。

disabledboolfalse

如果为 true,则禁用该组件。

focusVisibleClassNamestring-

此 prop 可以帮助识别哪个元素具有键盘焦点。当元素通过键盘交互获得焦点时,将应用该类名。它是 CSS :focus-visible 选择器的 polyfill。使用此功能的理由在此处进行了解释。如果需要,polyfill 可用于focus-visible 类应用于其他组件。

loadingboolfalse

如果为 true,则显示加载指示器,并且图标按钮变为禁用状态。

loadingIndicatornode<CircularProgress />

节点应包含一个带有 role="progressbar" 和可访问名称的元素。默认情况下,我们渲染一个由按钮本身标记的 CircularProgress

size'sm'
| 'md'
| 'lg'
| string
'md'

组件的大小。

要了解如何向组件添加自定义尺寸,请查看主题组件—扩展尺寸

slotProps{ loadingIndicator?: func
| object, root?: func
| object }
{}

用于内部每个插槽的 props。

slots{ loadingIndicator?: elementType, root?: elementType }{}

用于内部每个插槽的组件。

有关更多详细信息,请参见下面的插槽 API

sxArray<func
| object
| bool>
| func
| object
-

允许定义系统覆盖以及其他 CSS 样式的系统 prop。

有关更多详细信息,请参见 `sx` 页面

variant'outlined'
| 'plain'
| 'soft'
| 'solid'
| string
'plain'

要使用的全局变体

要了解如何添加您自己的变体,请查看主题组件—扩展变体

ref 被转发到根元素。

主题默认 props

您可以使用 JoyIconButton 通过主题更改此组件的默认 props。

插槽

要了解如何自定义插槽,请查看覆盖组件结构指南。

插槽名称类名默认组件描述
root.MuiIconButton-root'button'渲染根的组件。
loadingIndicator.MuiIconButton-loadingIndicator'span'渲染加载指示器的组件。

CSS 类

这些类名对于使用 CSS 进行样式设置很有用。当触发特定状态时,它们会应用于组件的插槽。

类名规则名称描述
.Mui-disabled如果 disabled={true},则应用于根元素的状态类。
.Mui-focusVisible如果按钮获得键盘焦点,则应用于根元素的状态类。
.MuiIconButton-colorContextcolorContext当颜色反转被触发时,应用于根元素的类名。
.MuiIconButton-colorDangercolorDanger如果 color="danger",则应用于根元素的类名。
.MuiIconButton-colorNeutralcolorNeutral如果 color="neutral",则应用于根元素的类名。
.MuiIconButton-colorPrimarycolorPrimary如果 color="primary",则应用于根元素的类名。
.MuiIconButton-colorSuccesscolorSuccess如果 color="success",则应用于根元素的类名。
.MuiIconButton-colorWarningcolorWarning如果 color="warning",则应用于根元素的类名。
.MuiIconButton-loadingloading如果 loading={true},则应用于根元素的类名。
.MuiIconButton-sizeLgsizeLg如果 size="lg",则应用于根元素的类名。
.MuiIconButton-sizeMdsizeMd如果 size="md",则应用于根元素的类名。
.MuiIconButton-sizeSmsizeSm如果 size="sm",则应用于根元素的类名。
.MuiIconButton-variantOutlinedvariantOutlined如果 variant="outlined",则应用于根元素的类名。
.MuiIconButton-variantPlainvariantPlain如果 variant="plain",则应用于根元素的类名。
.MuiIconButton-variantSoftvariantSoft如果 variant="soft",则应用于根元素的类名。
.MuiIconButton-variantSolidvariantSolid如果 variant="solid",则应用于根元素的类名。

您可以使用以下自定义选项之一来覆盖组件的样式

源代码

如果您在此页面中没有找到所需的信息,请考虑查看组件的实现以获取更多详细信息。