跳到主要內容跳到主要內容

InputAPI

React Input 元件的 API 參考文件。瞭解此匯出模組的 props、CSS 和其他 API。

示範

匯入

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

閱讀關於最小化套件大小的指南,以瞭解差異。

Props

InputBase 元件的 Props 也可用。

名稱類型預設值描述
autoCompletestring-

此 prop 協助使用者更快填寫表單,尤其是在行動裝置上。名稱可能會造成混淆,因為它更像是自動填寫。您可以依照規格瞭解更多資訊。

autoFocusbool-

若為 true,則 input 元素會在首次掛載時取得焦點。

classesobject-

覆寫或擴充套用至元件的樣式。

詳情請參閱下方的CSS 類別 API

color'primary'
| 'secondary'
| string
-

元件的色彩。它同時支援預設和自訂主題色彩,可以按照調色盤自訂指南中所示的方式新增。此 prop 預設為從父 FormControl 元件繼承的值 ('primary')。

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

用於每個內部 slot 的元件。

componentsProps{ input?: object, root?: object }{}

slot 元件的額外 props。您可以覆寫現有的 props 或新增 props。

defaultValueany-

預設值。當元件不受控制時使用。

disabledbool-

若為 true,則停用元件。此 prop 預設為從父 FormControl 元件繼承的值 (false)。

disableUnderlineboolfalse

若為 true,則 input 將不會有底線。

endAdornmentnode-

此元件的結尾 InputAdornment

errorbool-

若為 true,則 input 將指示錯誤。此 prop 預設為從父 FormControl 元件繼承的值 (false)。

fullWidthboolfalse

若為 true,則 input 將佔用其容器的完整寬度。

idstring-

input 元素的 id。

inputComponentelementType'input'

用於 input 元素的元件。可以是字串 (用於 HTML 元素) 或元件。

inputPropsobject{}

屬性套用至 input 元素。

inputRefref-

將 ref 傳遞至 input 元素。

margin'dense'
| 'none'
-

若為 dense,將調整垂直間距。這通常透過 FormControl 的 context 取得。此 prop 預設為從父 FormControl 元件繼承的值 ('none')。

maxRowsnumber
| string
-

當 multiline 選項設定為 true 時,要顯示的最大列數。

minRowsnumber
| string
-

當 multiline 選項設定為 true 時,要顯示的最小列數。

multilineboolfalse

若為 true,則會呈現 TextareaAutosize 元素。

namestring-

input 元素的 Name 屬性。

onChangefunc-

當值變更時觸發的回呼。

簽名:function(event: React.ChangeEvent) => void
  • event 回呼的事件來源。您可以透過存取 event.target.value (字串) 來取出新值。
placeholderstring-

使用者輸入值之前,input 中顯示的簡短提示。

readOnlybool-

防止使用者變更欄位的值 (而非與欄位互動)。

requiredbool-

若為 true,則 input 元素為必要。此 prop 預設為從父 FormControl 元件繼承的值 (false)。

rowsnumber
| string
-

當 multiline 選項設定為 true 時,要顯示的列數。

slotProps{ input?: object, root?: object }{}

slot 元件的額外 props。您可以覆寫現有的 props 或新增 props。
此 prop 是 componentsProps prop 的別名,未來將會棄用。

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

用於每個內部 slot 的元件。
此 prop 是 components prop 的別名,未來將會棄用。

startAdornmentnode-

此元件的開頭 InputAdornment

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

系統 prop,允許定義系統覆寫以及額外的 CSS 樣式。

詳情請參閱 `sx` 頁面

typestring'text'

input 元素的類型。應為有效的 HTML5 input 類型

valueany-

input 元素的值,受控元件的必要屬性。

ref 會轉發到根元素。

繼承

雖然上方未明確記錄,但 InputBase 元件的 props 也適用於 Input。您可以利用此優勢鎖定巢狀元件

主題預設 props

您可以使用 MuiInput 來變更此元件的預設 props 透過主題

CSS 類別

這些類別名稱對於使用 CSS 設定樣式很有用。當觸發特定狀態時,它們會套用至元件的 slot。

類別名稱規則名稱描述
.Mui-disableddisabled={true},則套用至根元素的樣式。
.Mui-errorerror={true},則套用至根元素的狀態類別。
.Mui-focused若元件取得焦點,則套用至根元素的樣式。
.MuiInput-colorSecondarycolorSecondary若色彩為 secondary,則套用至根元素的樣式。
.MuiInput-formControlformControl若元件為 FormControl 的後代,則套用至根元素的樣式。
.MuiInput-fullWidthfullWidthfullWidth={true},則套用至根元素的樣式。
.MuiInput-inputinput套用至 input 元素的樣式。
.MuiInput-inputAdornedEndinputAdornedEnd若提供 endAdornment,則套用至 input 元素的樣式。
.MuiInput-inputAdornedStartinputAdornedStart若提供 startAdornment,則套用至 input 元素的樣式。
.MuiInput-inputMultilineinputMultilinemultiline={true},則套用至 input 元素的樣式。
.MuiInput-inputSizeSmallinputSizeSmallsize="small",則套用至 input 元素的樣式。
.MuiInput-inputTypeSearchinputTypeSearchtype="search",則套用至 input 元素的樣式。
.MuiInput-multilinemultilinemultiline={true},則套用至根元素的樣式。
.MuiInput-rootroot套用至根元素的樣式。
.MuiInput-sizeSmallsizeSmallsize="small",則套用至 input 元素的樣式。
.MuiInput-underlineunderline除非 disableUnderline={true},否則套用至根元素的樣式。

您可以使用下列其中一種自訂選項來覆寫元件的樣式

原始碼

如果您在此頁面中找不到資訊,請考慮查看元件的實作以瞭解更多詳細資訊。