CKEditor 5 라이브러리 커스텀 패키징
CKEditor 완전 정복 👊🏻
들어가며😃
프로젝트에서 CKEditor를 사용하였는데 해당 라이브러리에서 제공해주는 기본 에디터보다 커스텀해서 쓰는 편이 더 효율적이였다. 워낙 필수기능만 구성하자는 취지가 있었던지라 기본 기능도 프로젝트 핏엔 워낙 넘쳐 필요한 기능만 쓰는 것 보다 커스텀을 통해 훨 가볍게 가져다 쓸 수 있는 이점도 있었다. 그래서 이번에 라이브러리 패키징을 처음 접하게 되었는데 생각보다 꽤 쉬웠고 다음을 위해 정리해보는 오늘의 포스팅이다.✍🏻
에디터 다운로드 순서
-
CKEditor 홈페이지에 접속
-
Online builder
-
에디터 타입 선택 (나는 기본 classic 을 선택했다)
-
프로젝트에 필요한 기능을 커스텀한다.
-
선택한 기능들을 상단바에 넣고 빼고 정렬을 정의할 수 있다. 이 부분은 다운받아서 고칠 수 있는 부분!
-
언어 선택
-
다운로드
패키징 🎁
1 .패키지를 열고 install
2 .npm run build
를 통해 파일 빌드
3 .npm pack
패키징 _ 패키징 완료 후 아래와 같이 무언가 파일이 하나 생겼을 것이다!🫢
4 .해당 파일을 기존 프로젝트 폴더로 복사해온다. 나는 src/libs에 위치하게 했다.
5 .package.json
에 다운받을 파일 경로를 추가한다
"dependencies": {
"ckeditor5-custom-build": "file:src/libs/ckeditor5-custom-build-0.0.1.tgz",
},
6 .npm install
이후 에디터를 쓰는 곳에서 커스텀 에디터를 import 한다. import 경로는 node_modules의 경로이다.
import { CKEditor } from "@ckeditor/ckeditor5-react";
import CustomEditor from "ckeditor5-custom-build/build/ckeditor";
const Editor = () => {
return (
<>
<CKEditor editor={CustomEditor} />
</>
);
};
export default Editor;
7 .결과 _ 아주 만족👊🏻
npm install 순서
1 .명령어 실행
npm install @ckeditor/ckeditor5-build-classic
npm install @ckeditor/ckeditor5-react
2 .에디터를 호출 해본다
import ClassicEditor from "@ckeditor/ckeditor5-build-classic";
import { CKEditor } from "@ckeditor/ckeditor5-react";
const Editor = () => {
return (
<>
<CKEditor editor={ClassicEditor} />
</>
);
};
export default Editor;
3 .위의 기능에서 일부만 사용하고 싶다면 toolbar 속성을 지정하면 된다.
<CKEditor
editor={ClassicEditor}
config=
/>
해당 라이브러리를 사용해보면서 무언가 불편함을 느낌으로 인해 처음으로 패키징을 해보았는데 생각보다 좋은 배움의 시간이였다. 지정된 라이브러리 뿐만아니라 우리가 커스텀한 라이브러리 파일을 install 시 끌어오는것도 매우 신기하였고 다른 라이브러리도 이렇게 쓰는 경우가 있던데 어떤 불편함과 이유로 따로 커스텀을 했는지 궁금해지기도 했다. 다음에 한번 살펴봐야겠다. 어쨌든 오늘도 많은 배움의 시간이 되었다 굳굳 🎁🚀