Rating
순서가 있는 평점 척도에서 점수를 고치거나 지웁니다.
용법
5점 별점
5점 척도에서 점수를 고르고 다시 지울 수 있습니다.
5점 척도에서 점수를 고르고 다시 지울 수 있습니다.
<!-- Rating / Five Star -->
<script setup lang="ts">
import { RatingRoot, RatingItem, RatingIndicator, RatingClear } from '@sectile/vue/rating'
const ratings = ['1', '2', '3', '4', '5']
</script>
<template>
<RatingRoot :items="ratings" default-value="4" :clearable="true">
<RatingItem v-for="value in ratings" :key="value" :value="value">
★<RatingIndicator />
</RatingItem>
<RatingClear>Clear rating</RatingClear>
</RatingRoot>
</template>필수 선택
항상 하나의 값이 선택되거나 하나의 영역이 펼쳐진 상태를 유지합니다.
항상 하나의 값이 선택되거나 하나의 영역이 펼쳐진 상태를 유지합니다.
<!-- Rating / Required -->
<script setup lang="ts">
import { RatingRoot, RatingItem, RatingIndicator, RatingClear } from '@sectile/vue/rating'
const ratings = ['1', '2', '3', '4', '5']
</script>
<template>
<RatingRoot :items="ratings" default-value="4" :clearable="true">
<RatingItem v-for="value in ratings" :key="value" :value="value">
★<RatingIndicator />
</RatingItem>
<RatingClear>Clear rating</RatingClear>
</RatingRoot>
</template>외부 상태 관리
현재 값은 부모가 관리하고, 허용된 변경을 컴포넌트에 다시 전달합니다.
현재 값은 부모가 관리하고, 허용된 변경을 컴포넌트에 다시 전달합니다.
<!-- Rating / Controlled -->
<script setup lang="ts">
import { RatingRoot, RatingItem, RatingIndicator, RatingClear } from '@sectile/vue/rating'
const ratings = ['1', '2', '3', '4', '5']
</script>
<template>
<RatingRoot :items="ratings" default-value="4" :clearable="true">
<RatingItem v-for="value in ratings" :key="value" :value="value">
★<RatingIndicator />
</RatingItem>
<RatingClear>Clear rating</RatingClear>
</RatingRoot>
</template>API
Vue 패키지: @sectile/vue/rating
RatingRootRatingItemRatingIndicatorRatingClear
Props
RatingRootProps
as- 타입
PrimitiveAs기본값'div'이 파트가 렌더링할 요소 또는 컴포넌트입니다.
asChild- 타입
boolean기본값false하나뿐인 자식 요소에 파트 속성을 직접 합칠지 여부입니다.
clearable- 타입
boolean기본값false현재 선택을 지울 수 있는지 여부입니다.
defaultValue- 타입
string기본값''컴포넌트가 값을 관리할 때 사용할 초깃값입니다.
disabled- 타입
boolean기본값false사용자 조작을 막을지 여부입니다.
disabledItems- 타입
readonly string[]기본값[]포커스와 선택 대상에서 제외할 항목 값입니다.
form- 타입
string기본값undefined컨트롤을 연결할 네이티브 form 요소의 ID입니다.
items- 타입
readonly string[]기본값필수컴포넌트가 관리할 순서 있는 항목 값입니다.
modelValue- 타입
string기본값undefined부모가 상태를 관리할 때 사용할 현재 값입니다.
name- 타입
string기본값undefined네이티브 폼 제출에 사용할 이름입니다.
readonly- 타입
boolean기본값false값 확인만 허용하는 읽기 전용 상태 여부입니다.
required- 타입
boolean기본값false제출 전에 올바른 값이 반드시 있어야 하는지 여부입니다.
RatingClearProps
as- 타입
PrimitiveAs기본값'button'이 파트가 렌더링할 요소 또는 컴포넌트입니다.
asChild- 타입
boolean기본값false하나뿐인 자식 요소에 파트 속성을 직접 합칠지 여부입니다.
슬롯
RatingRootSlotProps
clearable- 타입
boolean현재 값을 지울 수 있는지 여부입니다.
disabled- 타입
boolean사용자 조작을 막을지 여부입니다.
highlightedValue- 타입
string | null조작 대상으로 강조된 현재 값입니다.
readonly- 타입
boolean값 확인만 허용하는 읽기 전용 상태 여부입니다.
value- 타입
string이 계약이 노출하는 현재 값입니다.
이벤트
RatingRoot
update:modelValue- 페이로드
string컴포넌트가 외부 제어 값의 변경을 요청할 때 발생합니다.
기타 타입
RatingValueChangeHandler
type RatingValueChangeHandler = (value: string) => void파트
공통 범위: [data-scope="rating"]. 컴포넌트 내부로 스타일을 제한할 때 파트 선택자와 함께 사용합니다.
| 파트 | 선택자 | 역할 | 추가 속성 |
|---|---|---|---|
root | [data-part="root"] | 컴포넌트 경계와 내부 파트를 묶습니다. | — |
item | [data-part="item"] | 선택하거나 실행할 수 있는 항목 하나입니다. | — |
indicator | [data-part="indicator"] | 주요 콘텐츠와 나란히 상태나 위치를 표시합니다. | — |
clear | [data-part="clear"] | 현재 값이나 항목 모음을 비웁니다. | — |
키보드 동작
| 키 | 동작 |
|---|---|
| Arrow keys | 보이는 방향에 따라 현재 선택 항목을 이동합니다. |
| Home / End | 선택 가능한 첫 번째 또는 마지막 항목으로 이동합니다. |
| Enter / Space | 현재 항목을 선택하거나 실행합니다. |
| Printable text | 글자 검색을 지원하면 다음 일치 항목으로 이동합니다. |
접근성
평점 선택은 라디오 묶음 의미를 사용하고 각 점수에 이름을 제공하며 명시적인 지우기 작업을 제공합니다.
관련 WAI-ARIA 패턴에서 호스트 접근성 규칙을 확인할 수 있습니다.
