vue-class-component를 사용하여 es6 vue-component 라이브러리를 구축하는 방법
다음과 같은 요건을 가진 vue-class-component 및 vue-property-decorator를 사용하여 vuejs 구성 요소 라이브러리를 형식 스크립트로 생성하려고 합니다.
- 라이브러리 구성 요소는 클래스 형식의 타이프 스크립트로 작성해야 합니다.
- 프로젝트에서 트리쉐이킹을 허용하려면 라이브러리 구성 요소를 es6 모듈로 내보내야 합니다.
라이브러리에서는 최신 버전의 @vue/cli를 사용하여 프로젝트의 골격을 설정했습니다.그 라이브러리 프로젝트에서는 컴포넌트가 정상적으로 동작하고 있습니다.
반면 어플리케이션은 웹 팩 설정을 사용하고 있으며, 여기서는 vue-components를 사용하고 있습니다.
보통 es6에서 타이프스크립트 기반 라이브러리를 구축하려면 tsc를 사용하여 ts 파일을 es6 js 파일로 변환합니다.그러나 이 방법으로는 구성 요소가 템플릿을 인식하지 못합니다.tsc와 vue-template-compiler를 조합하는 방법이 있습니까?
다른 방법을 찾아냈지만, 이 방법으로는 전혀 만족할 수 없습니다.
나는 사용했다"vue-cli-service build --target lib --name vue-lib ./src/index.ts"
이렇게 하면 vue-cli-service는 여기서 설명하는 대로 umd-bundle 및 commonjs-bundle을 생성합니다.프로젝트에서는 컴포넌트와//@ts-ignore
를 참조해 주세요.따라서 선언이 손실되고 컴포넌트는 es6 구문이 아닙니다./
현재 안고 있는 문제를 보다 잘 이해하기 위해 github에 최소한의 예를 작성했습니다.이 예에서는, 이하를 참조해 주세요.
라이브러리: https://github.com/Sh4bbY/vue-lib
응용 프로그램: https://github.com/Sh4bbY/vue-project
언급URL : https://stackoverflow.com/questions/51173059/how-to-build-a-es6-vue-component-library-using-vue-class-component
'source' 카테고리의 다른 글
메이븐과의 관계도 포함해서 (0) | 2022.08.11 |
---|---|
고속 메모리 복사 방법(ARGB에서 BGR로) (0) | 2022.08.11 |
Mockito 메서드 호출 순서/시퀀스 확인 (0) | 2022.08.11 |
마운트된 상위 구성 요소에서 비동기 메서드가 완료된 후에만 하위 구성 요소 (0) | 2022.08.11 |
VueJs와 같은 페이지에서 같은 앱을 여러 번 사용할 수 있습니까? (0) | 2022.08.11 |