#GWC UI Library : TextInput

웹 UI 라이브러리인 GWC에서 제공하는 TextInput 컴포넌트에 대한 예제 코드입니다.

먼저 DOM 구성은 다음과 같습니다.

그리고 CSS 구성은 다음과 같구요.

.center {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 1em;
}

.center div {
    display: flex;
    align-items: center;
    gap: 0.2em;
}

gwc-textinput {
    width: 20em;
}

js 코드는 다음과 같습니다.

window.onload = () => {
    const onChange = (event) => {
        label.content = `${event.target.id}의 값: ${event.target.value}`;
    };

    textinput1.addEventListener("change", onChange);
    textinput2.addEventListener("change", onChange);
    textinput3.addEventListener("change", onChange);
    textinput4.addEventListener("change", onChange);

    button.addEventListener("click", () => {
        const v1 = textinput1.value;
        const v2 = textinput2.value;
        const v3 = textinput3.value;
        const v4 = textinput4.value;

        gwcMessage(`
            textinput1: ${v1}
textinput2: ${v2}
textinput3: ${v3}
textinput4: ${v4} `); }); };

실행 결과는 다음과 같습니다.

keyup 이벤트에 대한 코드 사용예는 다음과 같습니다.

textinput.addEventListener("keyup", (event) => {
    if (event.detail.originalEvent.key === "Enter") {
        // ..
    }
});

추가적으로 focus와 blur 이벤트도 제공합니다.

gwc에서는 상위 이벤트 객체에 접근하기 위해서는 event.detail.originalEvent를 이용합니다.

비활성화는 아닌데, 편집만 막는 readonly 속성도 제공합니다. 사용 예는 다음과 같습니다.


답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다