MDUI문서
llms.txt 링크 복사llms-full.txt 링크 복사이 페이지를 Markdown 형식으로 보기ChatGPT와 이 페이지 내용에 대해 논의하기프로젝트 전체 문서에 대해 ChatGPT와 논의하기
프리셋 색상
사용자 지정 색상
배경화면에서 색상 추출
배경화면을 선택해 주세요
개발 가이드
AI 보조 개발
스타일
프레임워크와 통합
컴포넌트
Avatar 아바타Badge 배지BottomAppBar 하단 앱 바Button 버튼ButtonIcon 아이콘 버튼Card 카드Checkbox 체크박스Chip CircularProgress 원형 프로그레스Collapse 접기Dialog 다이얼로그Divider 구분선Dropdown 드롭다운Fab 플로팅 액션 버튼Icon 아이콘Layout 레이아웃LinearProgress 선형 프로그레스List 목록Menu 메뉴NavigationBar 내비게이션 바NavigationDrawer 내비게이션 드로어NavigationRail 내비게이션 레일Radio 라디오RangeSlider 범위 슬라이더Select 셀렉트SegmentedButton 세그먼트 버튼Slider 슬라이더Snackbar 스낵바Switch 스위치Tabs TextField 텍스트 필드Tooltip 툴팁TopAppBar 상단 앱 바
함수
독립 패키지

Switch스위치

開關元件用來切換單一選項的開啟或關閉狀態,透過直覺的互動設計,讓使用者能輕鬆調整設定。

使用方法

按需引入元件:

import 'mdui/components/switch.js';

按需引入元件的 TypeScript 型別:

import type { Switch } from 'mdui/components/switch.js';

使用範例:

<mdui-switch></mdui-switch>

範例

選取狀態

當開關被選取時,checked 屬性的值為 true。你也可以透過加上 checked 屬性,使開關預設處於選取狀態。

停用狀態

透過加上 disabled 屬性,可以停用開關元件。

圖示

你可以透過 unchecked-icon 屬性來設定未選取狀態的 Material Icons 圖示,透過 checked-icon 屬性來設定選取狀態的 Material Icons 圖示。也可以透過 unchecked-iconchecked-icon slot 來自訂未選取和選取狀態的圖示元素。

API

속성

HTML 속성JavaScript 프로퍼티Reflect유형기본값
disableddisabledbooleanfalse

是否為停用狀態

checkedcheckedbooleanfalse

是否為選取狀態

defaultCheckedbooleanfalse

預設選取狀態。在重設表單時,將重設為此狀態。此屬性只能透過 JavaScript 屬性設定

unchecked-iconuncheckedIconstring-

未選取狀態的 Material Icons 圖示名。也可以透過 slot="unchecked-icon" 設定

checked-iconcheckedIconstring-

選取狀態的 Material Icons 圖示名。也可以透過 slot="checked-icon" 設定

預設為 check 圖示,可傳入空字串移除預設圖示

requiredrequiredbooleanfalse

送出表單時,是否必須選取此開關

formformstring-

關聯的 <form> 元素。此屬性值應為同一頁面中的一個 <form> 元素的 id

若未指定此屬性,則該元素必須是 <form> 元素的子元素。透過此屬性,你可以將元素放置在頁面的任何位置,而不僅僅是 <form> 元素的子元素。

namenamestring''

開關的名稱,將與表單資料一起送出

valuevaluestring'on'

開關的值,將與表單資料一起送出

validityValidityState-

表單驗證狀態物件,具體參見 ValidityState

validationMessagestring-

如果表單驗證未通過,此屬性將包含提示資訊。如果驗證通過,此屬性將為空字串

autofocusautofocusbooleanfalse

是否在頁面載入完成後自動取得焦點

tabindextabIndexnumber-

元素在使用 Tab 鍵切換焦點時的順序

메서드

이름매개변수반환값
checkValidity
boolean

檢查表單欄位是否通過驗證。如果未通過,回傳 false 並觸發 invalid 事件;如果通過,回傳 true

reportValidity
boolean

檢查表單欄位是否通過驗證。如果未通過,回傳 false 並觸發 invalid 事件;如果通過,回傳 true

如果驗證未通過,還會在元件上顯示驗證失敗的提示。

setCustomValidity
  • message: string
void

設定自訂的錯誤提示文字。只要這個文字不為空,就表示欄位未通過驗證

click
void

模擬滑鼠點擊元素

focus
  • options: FocusOptions (선택사항)
void

將焦點設定到目前元素。

可以傳入一個物件作為引數,該物件的屬性包括:

  • preventScroll:預設情況下,元素取得焦點後,頁面會捲動以將該元素捲動到檢視中。如果不希望頁面捲動,可以將此屬性設定為 true
blur
void

移除目前元素的焦點

이벤트

이름
focus

取得焦點時觸發

blur

失去焦點時觸發

change

選取狀態變更時觸發

input

選取狀態變更時觸發

invalid

表單欄位驗證不通過時觸發

Slots

이름
unchecked-icon

未選取狀態的元素

checked-icon

選取狀態的元素

CSS Parts

이름
track

軌道

thumb

圖示容器

unchecked-icon

未選取狀態的圖示

checked-icon

選取狀態的圖示

CSS 사용자 정의 속성

이름
--shape-corner

元件軌道的圓角大小。可以指定一個具體的像素值;但更推薦引用設計令牌

--shape-corner-thumb

元件圖示容器的圓角大小。可以指定一個具體的像素值;但更推薦引用設計令牌

이 페이지의 목차