Textarea

설명, 메모, 메시지처럼 여러 줄의 내용을 입력받습니다.

Live preview
컴포넌트를 조작하면 여기에 결과가 표시됩니다.
코드 보기
HTML
<sy-textarea
  label="프로젝트 설명"
  placeholder="어떤 프로젝트인지 알려주세요"
  rows="4"
  max="200"
  resize="vertical"
  size="medium"
  counter
  id="sample"
  name="description"
></sy-textarea>

사용 가이드

#

메모·상세 설명처럼 여러 줄의 긴 텍스트를 받습니다. 한 줄 입력에는 Input을 사용하세요.

  1. 오류 문구는 error 슬롯에 작성합니다.

    컴포넌트 안에 <span slot="error">오류 메시지</span>을 넣으세요. 글자뿐 아니라 링크 등 필요한 안내도 넣을 수 있습니다. noNativeValidity를 지원하는 입력은 이를 켜면 브라우저 팝업 대신 이 안내를 표시합니다. Switch는 항상 컴포넌트 아래에 오류를 표시합니다.

  2. 업무 규칙의 실패는 setCustomError()로 알립니다.

    예를 들어 서버가 중복된 값을 거절하면 error 슬롯의 문구를 바꾸고 setCustomError()를 호출하세요. 이 메서드에는 메시지 인자를 전달하지 않습니다. 사용자 지정 오류가 있으면 폼 제출도 차단됩니다.

  3. 해결 후 해제하고 제출 가능 여부를 확인합니다.

    clearCustomError()로 업무 규칙 오류를 해제하세요. required나 입력 형식 검사까지 해제되지는 않습니다. await checkValidity()는 true/false를, reportValidity()는 검사 결과와 오류 표시를 함께 제공합니다. name을 지정한 유효한 값은 제출 시 FormData로 읽습니다.

입력 공간
rows로 기본 높이를 정하세요. resize="vertical"로 너비를 유지하면서 높이를 조절하게 할 수 있습니다.
길이 안내
counter로 글자 수를 보여주고 min·max로 길이를 제한합니다.
필수 입력
required로 빈 값 제출을 검사하고 오류 안내를 함께 제공하세요.

기능별 예제

#

28개 주제에서 필요한 기능을 선택하세요. 속성 설정, 메서드 호출, 이벤트 결과와 슬롯 구성을 실행 화면과 코드로 확인할 수 있습니다.

사용 예제 · Overview

선택한 예제를 직접 조작해 보세요. 여러 구성이 있는 주제는 세부 예제를 바꿀 수 있습니다.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Autofocus

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Borderless

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Clearable

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Counter

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Disabled

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Label

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Max

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Min

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · No Native Validity

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Placeholder

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Readonly

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Required

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Resize

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Rows

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Size

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Status

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Value

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

메서드 · Check Validity

예제 안의 버튼으로 메서드를 호출하고 실제 결과를 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

메서드 · Get Status

예제 안의 버튼으로 메서드를 호출하고 실제 결과를 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

메서드 · Report Validity

예제 안의 버튼으로 메서드를 호출하고 실제 결과를 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

메서드 · Set Blur

예제 안의 버튼으로 메서드를 호출하고 실제 결과를 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

메서드 · Set Custom Error

예제 안의 버튼으로 메서드를 호출하고 실제 결과를 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

메서드 · Set Focus

예제 안의 버튼으로 메서드를 호출하고 실제 결과를 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

이벤트 · Blured

컴포넌트를 조작하면 아래 실행 화면에 이벤트 이름과 전달 값이 표시됩니다.

코드 보기
HTML
예제를 불러오고 있습니다.

이벤트 · Changed

컴포넌트를 조작하면 아래 실행 화면에 이벤트 이름과 전달 값이 표시됩니다.

코드 보기
HTML
예제를 불러오고 있습니다.

이벤트 · Focused

컴포넌트를 조작하면 아래 실행 화면에 이벤트 이름과 전달 값이 표시됩니다.

코드 보기
HTML
예제를 불러오고 있습니다.

사용 예제 · 입력된 내용 지우기

미리 입력된 프로젝트 설명을 지우기 버튼으로 한 번에 삭제합니다.

코드 보기
HTML
<sy-textarea
  label="프로젝트 설명"
  placeholder="어떤 프로젝트인지 알려주세요"
  rows="4"
  max="200"
  resize="vertical"
  size="medium"
  counter
  clearable
  value="디자인 팀을 위한 공동 작업 공간입니다."
  id="sample"
  name="description"
></sy-textarea>

<script type="module">
  const component1 = document.querySelector("#sample");
  Object.assign(component1, {
    "clearable": true,
    "value": "디자인 팀을 위한 공동 작업 공간입니다."
  });
</script>

API reference

#

이름에 마우스를 올리거나 키보드로 선택하면 적용 코드를 확인할 수 있습니다. 터치 화면에서는 이름을 누르세요.

<sy-textarea>

Properties

Attribute / PropertyTypeDefaultDescription
booleanfalse처음 연결될 때 입력란에 포커스를 보냅니다.
booleanfalse기본 테두리를 숨깁니다.
booleanfalse현재 값을 비우는 버튼을 표시합니다.
booleanfalse입력 글자 수를 표시합니다.
booleanfalse사용자 조작과 키보드 포커스를 차단합니다.
string""항목을 설명하는 레이블입니다.
numberNumber.MAX_SAFE_INTEGER입력 가능한 최대 글자 수입니다.
number0필수 최소 글자 수입니다.
string""값이 비어 있을 때 표시할 안내 문구입니다.
booleanfalse현재 값을 보여주면서 사용자 수정을 막습니다.
booleanfalse값이 없으면 폼 검증을 실패시킵니다.
"none" | "horizontal" | "vertical" | "both""none"사용자가 크기를 조절할 방향입니다.
number4입력 영역의 기본 줄 수입니다.
"small" | "medium" | "large""medium"컴포넌트의 크기입니다.
'default' | 'warning' | 'error' | 'success''default'기본·성공·경고·오류 상태를 시각적으로 표현합니다.
string""현재 값 또는 항목의 식별 값입니다.
string""FormData에 사용되는 필드 이름입니다.
booleanfalse브라우저의 기본 오류 표시 대신 앱의 오류 UI를 사용할 때 지정합니다. checkValidity 검사 자체는 유지됩니다.

Events

EventDetailDescription
CustomEvent<{ value: string; length: number; isValid: boolean; status: string }>값 또는 선택 상태가 바뀔 때 발생합니다.
CustomEvent<{ value: string; isValid: boolean; status: string }>포커스를 잃으면 발생합니다.
CustomEvent<{ value: string; isValid: boolean; status: string }>포커스를 받으면 발생합니다.

Methods

MethodReturnsDescription
Promise<void>입력 또는 동작 요소에 키보드 포커스를 보냅니다.
Promise<void>입력 요소에서 포커스를 해제합니다.
Promise<boolean>현재 제약 조건에 맞으면 true, 아니면 false를 반환합니다.
Promise<boolean>현재 값을 검사하고 오류를 사용자에게 표시합니다.
Promise<void>사용자 지정 오류 상태를 설정합니다.
Promise<void>사용자 지정 오류 상태를 해제합니다.
Promise<"" | "custom" | "valueMissing" | "tooShort" | "tooLong">현재 유효성 검사 상태를 반환합니다.

Slots

SlotDescription
유효성 검사 오류 메시지입니다.