Switch스위치
開關元件用來切換單一選項的開啟或關閉狀態,透過直覺的互動設計,讓使用者能輕鬆調整設定。
使用方法
按需引入元件:
import 'mdui/components/switch.js';
按需引入元件的 TypeScript 型別:
import type { Switch } from 'mdui/components/switch.js';
使用範例:
<mdui-switch></mdui-switch>停用狀態
透過加上 disabled 屬性,可以停用開關元件。
圖示
你可以透過 unchecked-icon 屬性來設定未選取狀態的 Material Icons 圖示,透過 checked-icon 屬性來設定選取狀態的 Material Icons 圖示。也可以透過 unchecked-icon 和 checked-icon slot 來自訂未選取和選取狀態的圖示元素。
API
속성
| HTML 속성 | JavaScript 프로퍼티 | Reflect | 유형 | 기본값 |
|---|---|---|---|---|
disabled | disabled | boolean | false | |
是否為停用狀態 | ||||
checked | checked | boolean | false | |
是否為選取狀態 | ||||
defaultChecked | boolean | false | ||
預設選取狀態。在重設表單時,將重設為此狀態。此屬性只能透過 JavaScript 屬性設定 | ||||
unchecked-icon | uncheckedIcon | string | - | |
未選取狀態的 Material Icons 圖示名。也可以透過 | ||||
checked-icon | checkedIcon | string | - | |
選取狀態的 Material Icons 圖示名。也可以透過 預設為 | ||||
required | required | boolean | false | |
送出表單時,是否必須選取此開關 | ||||
form | form | string | - | |
關聯的 若未指定此屬性,則該元素必須是 | ||||
name | name | string | '' | |
開關的名稱,將與表單資料一起送出 | ||||
value | value | string | 'on' | |
開關的值,將與表單資料一起送出 | ||||
validity | ValidityState | - | ||
表單驗證狀態物件,具體參見 | ||||
validationMessage | string | - | ||
如果表單驗證未通過,此屬性將包含提示資訊。如果驗證通過,此屬性將為空字串 | ||||
autofocus | autofocus | boolean | false | |
是否在頁面載入完成後自動取得焦點 | ||||
tabindex | tabIndex | number | - | |
元素在使用 Tab 鍵切換焦點時的順序 | ||||
메서드
| 이름 | 매개변수 | 반환값 |
|---|---|---|
checkValidity | boolean | |
檢查表單欄位是否通過驗證。如果未通過,回傳 | ||
reportValidity | boolean | |
檢查表單欄位是否通過驗證。如果未通過,回傳 如果驗證未通過,還會在元件上顯示驗證失敗的提示。 | ||
setCustomValidity |
| void |
設定自訂的錯誤提示文字。只要這個文字不為空,就表示欄位未通過驗證 | ||
click | void | |
模擬滑鼠點擊元素 | ||
focus |
| void |
將焦點設定到目前元素。 可以傳入一個物件作為引數,該物件的屬性包括:
| ||
blur | void | |
移除目前元素的焦點 | ||
Slots
| 이름 |
|---|
unchecked-icon |
未選取狀態的元素 |
checked-icon |
選取狀態的元素 |
CSS Parts
| 이름 |
|---|
track |
軌道 |
thumb |
圖示容器 |
unchecked-icon |
未選取狀態的圖示 |
checked-icon |
選取狀態的圖示 |
CSS 사용자 정의 속성
| 이름 |
|---|
--shape-corner |
元件軌道的圓角大小。可以指定一個具體的像素值;但更推薦引用設計令牌 |
--shape-corner-thumb |
元件圖示容器的圓角大小。可以指定一個具體的像素值;但更推薦引用設計令牌 |