Не удается найти ошибку модуля для интерфейсов в сборке Angular Universal - PullRequest
0 голосов
/ 10 мая 2019

My Портфельное приложение Angular 7 с ngUniversal настроено в соответствии с официальной клиентской документацией .У меня настроены интерфейсы для входящих данных и некоторые общие функции.

"scripts": {
    "ng": "ng",
    "start": "npm run serve:ssr",
    "build": "npm run build:ssr",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e",
    "compile:server": "webpack --config webpack.server.config.js --progress --colors",
    "serve:ssr": "node dist/server",
    "build:ssr": "npm run build:client-and-server-bundles && npm run compile:server",
    "build:client-and-server-bundles": "ng build --prod && ng run my-portfolio:server:production"
}

Описание интерфейса и структура папок:

Interface description and folder structure

Компонент, использующий интерфейс:

Component using the interface


Задача

Универсальная сборкапроисходит сбой при выполнении ng Запустите my-portfolio: server: production с ошибкой, как показано на скриншоте.

Причина: Интерфейсы и общиефункции, которые не зарегистрированы ни в каких модулях.Они просто импортируются в компоненты.

Error while running ng run my-portfolio:server:production

Полная ошибка:

PS C: \ Acclaris \ Practice \AngularPractice \ my-portfolio> npm run build

my-portfolio@0.0.0 build C: \ Acclaris \ Practice \ AngularPractice \ my-portfolio npm run build: ssr

my-портфолио @0.0.0 build: ssr C: \ Acclaris \ Practice \ AngularPractice \ my-portfolio npm run build: клиент-и-серверные пакеты && npm run compile: сервер

my-portfolio@0.0.0 build:комплекты клиент-сервер C: \ Acclaris \ Practice \ AngularPractice \ my-portfolio ng build --prod && ng запустите my-portfolio: сервер: производство

Дата: 2019-05-10T10: 14:15.321Z Хеш: 49ca0a31b14b3f2ef33f Время: 28138мс чанк {0} время выполнения.274b2b523ee7c9b8154c.js (время выполнения) 2,19 кБ [запись] [визуализированный] чанк {1} es2015-polyfills.c5dd28b362270c767b34,45 полисов [56B].rendered] chunk {2} main.c6958b8ee410ac47c079.js (основной) 708 кБ [начальный] [rendered] chunk {3} polyfills.8bbb231b43165d65d357.js (polyfills) 41 кБ [начальный] [обработанный] кусок {4} styles.3e7ad83f8f97d37ca687.css (стили) 61,6 кБ [начальный] [обработанный] кусок {5} 5.da6e7079542863691897.js () 1,92 кБ [обработанный] кусок {6}6.89f434210c8e48ff257a.js () 718 байт [обработано] порция {7} 7.04704f420e92f76cb831.js () 5,2 кБ [выполнено]

Дата: 2019-05-10T10: 14: 28,776Z Хэш: a1b5d80aaeaee: a1b5d80aa2ecsee: время: 521995217eecchunk {main} main.js, main.js.map (main) 4,17 кБ [запись] [отрендерено]

ОШИБКА в src / app / shared / components / portfolio-builder / portfolio-builder.component.ts (2,27): ошибка TS2307: не удается найти модуль 'src / app / shared / interfaces'.src / app / core / portfolio / portfolio.component.ts (2,27): ошибка TS2307: не удается найти модуль 'src / app / shared / interfaces'.src / app / shared / components / построитель портфолио / body / body.component.ts (2,22): ошибка TS2307: не удается найти модуль 'src / app / shared / interfaces'.src / app / shared / components / section / education / education.component.ts (2,27): ошибка TS2307: не удается найти модуль 'src / app / shared / interfaces'.src / app / shared / components / section / education / education.component.ts (3,33): ошибка TS2307: не удается найти модуль 'src / app / shared / functions / function-library'.src / app / shared / components / utilities / edulet / edulet.component.ts (2,27): ошибка TS2307: не удается найти модуль 'src / app / shared / interfaces'.src / app / shared / компоненты / построитель портфолио / нижний колонтитул / footer.component.ts (2,26): ошибка TS2307: не удается найти модуль 'src / app / shared / interfaces'.src / app / shared / Components / построитель портфолио / header / header.component.ts (2,24): ошибка TS2307: Не удается найти модуль 'src / app / shared / interfaces'.src / app / shared / components / section / profile / profile.component.ts (2,25): ошибка TS2307: не удается найти модуль 'src / app / shared / interfaces'.src / app / shared / компоненты / построитель портфолио / боковая панель / sidebar.component.ts (2,32): ошибка TS2307: не удается найти модуль 'src / app / shared / interfaces'.src / app / shared / components / section / sidebar-section / sidebar-section.component.ts (2,32): ошибка TS2307: не удается найти модуль 'src / app / shared / interfaces'.src / app / shared / components / section / work / work.component.ts (2,22): ошибка TS2307: не удается найти модуль 'src / app / shared / interfaces'.src / app / shared / components / section / work / work.component.ts (3,33): ошибка TS2307: не удается найти модуль 'src / app / shared / functions / function-library'.src / app / shared / components / utilities / worklet / worklet.component.ts (2,22): ошибка TS2307: не удается найти модуль 'src / app / shared / interfaces'.

npm ERR!код ELIFECYCLE npm ERR!errno 1 npm ERR!my-portfolio@0.0.0 build: пакеты клиент-сервер: ng build --prod && ng run my-portfolio:server:production npm ERR!Статус выхода 1 npm ERR!нпм ERR!Ошибка в сценарии my-portfolio@0.0.0 build: client-and-server-bundles.нпм ERR!Это, вероятно, не проблема с npm.Скорее всего, выше выводится логирование.

npm ERR!Полный журнал этого прогона можно найти в: npm ERR!
C: \ Users \ debmallya.bhattachar \ AppData \ Roaming \ npm-cache_logs \ 2019-05-10T10_14_28_865Z-debug.log npm ERR!код ELIFECYCLE npm ERR!errno 1 npm ERR!my-portfolio@0.0.0 build: ssr: npm run build:client-and-server-bundles && npm run compile:server npm ERR!Статус выхода 1 npm ERR!нпм ERR!Ошибка в сценарии my-portfolio@0.0.0 build: ssr.нпм ERR!Это, вероятно, не проблема с npm.Вероятно, есть дополнительные выходные данные регистрации.

npm ERR!Полный журнал этого прогона можно найти в: npm ERR!
C: \ Users \ debmallya.bhattachar \ AppData \ Roaming \ npm-cache_logs \ 2019-05-10T10_14_28_983Z-debug.log npm ERR!код ELIFECYCLE npm ERR!errno 1 npm ERR!my-portfolio@0.0.0 build: npm run build:ssr npm ERR!Статус выхода 1 npm ERR!нпм ERR!Ошибка в сценарии сборки my-portfolio@0.0.0.нпм ERR!Это, вероятно, не проблема с npm.Вероятно, есть дополнительные выходные данные регистрации.

npm ERR!Полный журнал этого прогона можно найти в: npm ERR!
C: \ Users \ debmallya.bhattachar \ AppData \ Roaming \ npm-cache_logs \ 2019-05-10T10_14_29_044Z-debug.log

1 Ответ

0 голосов
/ 24 июля 2019

Измените путь импорта интерфейса Portfolio с того, который начинается с 'src / app / *', на прямой путь.Например, для вашего импорта PortfolioBuilderComponent должен выглядеть так:

import { Portfolio } from '../../interfaces/portfolio'
...