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

轮廓式输入框API

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

演示

导入

import OutlinedInput from '@mui/material/OutlinedInput';
// or
import { OutlinedInput } from '@mui/material';

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

属性

InputBase 组件的属性也可用。

名称类型默认值描述
autoCompletestring-

此属性帮助用户更快地填写表单,尤其是在移动设备上。名称可能会令人困惑,因为它更像是自动填充。您可以按照规范了解更多信息。

autoFocusbool-

如果为 true,则在首次挂载期间 input 元素会获得焦点。

classesobject-

覆盖或扩展应用于组件的样式。

有关更多详细信息,请参见下面的 CSS 类 API。

color'primary'
| 'secondary'
| string
-

组件的颜色。它支持默认主题颜色和自定义主题颜色,可以按照调色板自定义指南中所示的方式添加。此属性默认为从父 FormControl 组件继承的值 ('primary')。

components{ Input?: elementType, Root?: elementType }{}

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

defaultValueany-

默认值。当组件不受控制时使用。

disabledbool-

如果为 true,则禁用组件。此属性默认为从父 FormControl 组件继承的值 (false)。

endAdornmentnode-

此组件的末尾 InputAdornment

errorbool-

如果为 true,则 input 将指示错误。此属性默认为从父 FormControl 组件继承的值 (false)。

fullWidthboolfalse

如果为 true,则 input 将占用其容器的全部宽度。

idstring-

input 元素的 id。

inputComponentelementType'input'

用于 input 元素的组件。可以使用字符串来使用 HTML 元素或组件。

inputPropsobject{}

属性应用于 input 元素的属性。

inputRefref-

将 ref 传递给 input 元素。

labelnode-

input 的标签。它仅用于布局。实际的标签由 InputLabel 处理。

margin'dense'
| 'none'
-

如果为 dense,将调整垂直间距。这通常通过 FormControl 的上下文获得。此属性默认为从父 FormControl 组件继承的值 ('none')。

maxRowsnumber
| string
-

当 multiline 选项设置为 true 时,要显示的最大行数。

minRowsnumber
| string
-

当 multiline 选项设置为 true 时,要显示的最小行数。

multilineboolfalse

如果为 true,则渲染一个 TextareaAutosize 元素。

namestring-

input 元素的 Name 属性。

notchedbool-

如果为 true,则轮廓会开槽以容纳标签。

onChangefunc-

值更改时触发的回调。

签名:function(event: React.ChangeEvent) => void
  • event 回调的事件源。您可以通过访问 event.target.value (字符串) 来获取新值。
placeholderstring-

用户输入值之前显示在 input 中的简短提示。

readOnlybool-

它阻止用户更改字段的值(而不是与字段交互)。

requiredbool-

如果为 true,则 input 元素是必需的。此属性默认为从父 FormControl 组件继承的值 (false)。

rowsnumber
| string
-

当 multiline 选项设置为 true 时,要显示的行数。

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

用于每个插槽内部的组件。
此属性是 components 属性的别名,该属性将在未来被弃用。

startAdornmentnode-

此组件的开头 InputAdornment

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

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

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

typestring'text'

input 元素的类型。它应该是有效的 HTML5 输入类型

valueany-

input 元素的值,受控组件必需。

ref 被转发到根元素。

继承

虽然上面没有明确文档说明,但 InputBase 组件的属性在 OutlinedInput 中也可用。您可以利用这一点来定位嵌套组件

主题默认属性

您可以使用 MuiOutlinedInput 通过主题更改此组件的默认属性。

CSS 类

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

类名规则名称描述
.Mui-disabled如果 disabled={true},则应用于根元素的样式。
.Mui-error如果 error={true},则应用于根元素的状态类。
.Mui-focused如果组件获得焦点,则应用于根元素的样式。
.MuiOutlinedInput-adornedEndadornedEnd如果提供了 endAdornment,则应用于根元素的样式。
.MuiOutlinedInput-adornedStartadornedStart如果提供了 startAdornment,则应用于根元素的样式。
.MuiOutlinedInput-colorSecondarycolorSecondary如果颜色为 secondary,则应用于根元素的样式。
.MuiOutlinedInput-inputinput应用于 input 元素的样式。
.MuiOutlinedInput-inputAdornedEndinputAdornedEnd如果提供了 endAdornment,则应用于 input 元素的样式。
.MuiOutlinedInput-inputAdornedStartinputAdornedStart如果提供了 startAdornment,则应用于 input 元素的样式。
.MuiOutlinedInput-inputMultilineinputMultiline如果 multiline={true},则应用于 input 元素的样式。
.MuiOutlinedInput-inputSizeSmallinputSizeSmall如果 size="small",则应用于 input 元素的样式。
.MuiOutlinedInput-inputTypeSearchinputTypeSearch如果 type="search",则应用于 input 元素的样式。
.MuiOutlinedInput-multilinemultiline如果 multiline={true},则应用于根元素的样式。
.MuiOutlinedInput-notchedOutlinenotchedOutline应用于 NotchedOutline 元素的样式。
.MuiOutlinedInput-rootroot应用于根元素的样式。
.MuiOutlinedInput-sizeSmallsizeSmall如果 size="small",则应用于 input 元素的样式。

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

  • 使用全局类名。
  • 在自定义主题中,使用规则名称作为组件的 styleOverrides 属性的一部分。

源代码

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