[javascript] MediumEditor에서 텍스트 길이 제한 설정하기

MediumEditor는 사용자가 텍스트를 편집할 수 있는 오픈 소스 WYSIWYG 편집기입니다. 사용자가 입력할 수 있는 텍스트의 길이를 제한하는 기능을 추가하고 싶다면, 다음과 같은 방법을 따를 수 있습니다.

1. MediumEditor 설치하기

먼저, MediumEditor를 프로젝트에 설치해야 합니다. 다음 명령을 사용하여 npm으로 MediumEditor 패키지를 설치합니다.

npm install medium-editor

2. MediumEditor 초기화하기

MediumEditor를 사용하기 위해 필요한 초기화 코드를 작성합니다. 다음 예제는 텍스트 편집기를 id가 “editor”인 요소에 적용하고 있습니다.

import MediumEditor from 'medium-editor';

// 텍스트 편집기 초기화
var editor = new MediumEditor('#editor');

3. 텍스트 길이 제한 설정하기

텍스트 길이 제한을 구현하기 위해 MediumEditor의 input 이벤트를 활용할 수 있습니다. 이벤트 핸들러에서 입력된 텍스트의 길이를 확인하고, 제한을 초과한 경우에는 적절한 조치를 취합니다.

// input 이벤트 핸들러 등록
editor.subscribe('editableInput', function(event, editable) {
    var text = editable.textContent;
    var maxLength = 100; // 최대 길이 설정

    if (text.length > maxLength) {
        // 텍스트 길이가 제한을 초과한 경우
        editable.textContent = text.slice(0, maxLength); // 제한된 길이까지만 유지
        alert('텍스트 길이는 최대 ' + maxLength + '자까지 입력 가능합니다.');
    }
});

위 코드는 텍스트 편집기를 초기화한 후, editableInput 이벤트 핸들러를 등록하여 입력된 텍스트의 길이를 확인합니다. 만약 입력된 텍스트의 길이가 최대 길이를 초과한 경우, 제한된 길이까지만 유지하고 사용자에게 알림을 표시합니다.

4. 추가 기능

위 예제는 간단한 텍스트 길이 제한을 구현한 것이지만, 여러 가지 추가 기능을 적용할 수도 있습니다. 예를 들어, 사용자에게 남은 글자 수를 실시간으로 보여주거나, 제한을 초과한 경우 특정 스타일을 적용하는 등의 기능을 추가할 수 있습니다.

이와 같이 MediumEditor에서 텍스트 길이 제한 설정을 구현하는 방법을 소개하였습니다. 직접 적용해보시고 필요에 맞게 기능을 확장해보세요.

참고 자료