Для того, чтобы опубликовать угловую библиотеку, в первую очередь вы должны создать свой собственный общедоступный модуль API ( проект 1 ) и с помощью упаковщика (например, ng-Packagr) упаковать библиотеку. и, наконец, использовать вашу библиотеку в других проектах (проект 2 )
проект 1:
- в декораторе @NgModule, идентифицируйте компоненты экспорта, в разделе массива экспорта, как показано в примере ниже:
exports: [ReviewComponent, ]
и измените файл package.json. Упаковщик удостоверений в разделе скриптов:
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e",
**"packagr": "ng-packagr -p ng-package.json"**
}
создать конфигурацию ng-package.json:
// вот пример
{
"$schema": "./node_modules/ng-packagr/ng-package.schema.json",
"lib": {
"entryFile": "public_api.ts",}
}
создать конфиг public_api.ts. скажем, какой модуль должен быть упакован для целей экспорта:
export * from './src/app/reg-review/reg-review.module'
- выполните следующую команду:
npm run packagr
- после создания вашего пакета перейдите в подпапку dist и выполните следующую команду:
npm pack
проект 2:
- ссылка на библиотеку (которая была встроена в подпапку dist проекта 1)
npm install ../ngLibs/reg/registeration-0.0.0.tgz --save
- импортируйте ваш модуль desigerd и используйте его
import {RegisterReviewModule} из 'регистрации'
Вы можете воспользоваться этими адресами:
https://www.npmjs.com/package/ng-packagr
https://medium.com/@nikolasleblanc/building-an-angular-4-component-library-with-the-angular-cli-and-ng-packagr-53b2ade0701e