Мы планируем разработать большое приложение с использованием Angular 6. Поэтому мы планировали разработать его, разделив отдельные независимые проекты для каждого модуля, такие как Проект входа в систему, Проект чата, Проект аккаунта и т. Д. И проект Dashboard как родительский для использования.все функции. .Такие из них имеют свои собственные peerDependencies, независимые от других проектов. (См. изображение структуры папок ниже)
Например: Проект чата позаботится обо всех функциях чата, и на панели инструментов это может бытьиспользовать как <chat-footer ></ chat-footer>
(см. другое использование проекта и изображение ошибки ниже)
Наша цель - использовать чистую архитектуру в этом проекте. Если разработчик внесет некоторые изменения в проект, он опубликует его как новую версию и другие.разработчики принимают это обновление npm install
или командой обновления.
Мы не собираемся публиковать его как платный частный проект в www.npmjs.com , и мыбудет использовать Verdaccio в качестве прокси на нашем частном сервере.
Когда мы опубликуем проект как пакет и тамМы использовали это в другом проекте.это ошибка ниже.Из-за того, что пакетный проект peerDependancies не компилируется. Я получаю (см. Другое использование проекта и изображение ошибки ниже)
ОШИБКА в ./node_modules/nztc-chat-client/src/app/app.module.ts
Сборка модуля не удалась: Ошибка: E: \ Test Projects \ Verdaccio \ test> 001 \ homeModule \ node_modules \ nztc-chat-client \ src \ app \ app.module.ts отсутствует> изКомпиляция TypeScript.Убедитесь, что он находится в вашем tsconfig через свойство «files» или «include».
Отсутствующий файл, похоже, является частью сторонней библиотеки.Файлы TS в> опубликованных библиотеках часто являются признаком плохо упакованной библиотеки.Откройте> проблему в репозитории библиотеки, чтобы предупредить ее автора и попросить ее упаковать> библиотеку, используя угловой формат пакета.
в AngularCompilerPlugin.getCompiledFile (E: \ Test Projects \ Verdaccio \ test> 001 \homeModule \ node_modules \ @ngtools \ webpack \ src \ angular_compiler_plugin.js: 749>: 23) в plugin.done.then (E: \ Тестовые проекты \ Verdaccio \ test> 001 \ homeModule \ node_modules \ @ngtools \ webpack \ src \loader.js: 41: 31) at at process._tickCallback (internal / process / next_tick.js: 188: 7)
После этого я искал упаковку и пытался сделать [ng-packagr] .Но каждый пример показывает ng generate library {project name}
создать пакет, используя эту библиотеку. Но все еще не может найти хороший пример для создания пакета или решения для решения моей проблемы
------ Другой проектИспользование и изображение ошибки --------
------ Изображение структуры папки --------