Я работаю над приложением CRUD для Angular Universal с рендерингом на стороне сервера, используя MongoDB. Я уже делал несколько простых одностраничных вещей Angular с формами и проверками, но это мой первый опыт использования универсального приложения Angular с базой данных.
Вот статистика по моей angular версии, используемые пакеты и т. Д. c. Примечательно, что я пользуюсь Macbook, и у меня было много проблем с Angular, который сначала корректно устанавливался. Я использовал менеджер пакетов homebrew, чтобы заставить его работать.
Angular CLI: 8.3.26
Node: 12.13.1
OS: darwin x64
Angular: 8.2.14
Package Version
--------------------------------------------------------------------
@angular-devkit/architect 0.803.26
@angular-devkit/build-angular 0.803.26
@angular-devkit/build-optimizer 0.803.26
@angular-devkit/build-webpack 0.803.26
@angular-devkit/core 8.3.26
@angular-devkit/schematics 8.3.26
@angular/cdk 8.2.3
@angular/cli 8.3.26
@angular/material 8.2.3
@ngtools/webpack 8.3.26
@nguniversal/express-engine 8.2.6
@nguniversal/module-map-ngfactory-loader 8.2.6
@schematics/angular 8.3.26
@schematics/update 0.803.26
rxjs 6.4.0
typescript 3.5.3
webpack 4.39.2
Я могу заставить его скомпилироваться нормально, используя команду CLI npm run build:ssr && npm run serve:ssr
Когда я открываю http://localhost: 4000 / , отображается страница это:
StaticInjectorError(Platform: core)[router_RouterOutlet -> ChildrenOutletContexts]:
NullInjectorError: No provider for ChildrenOutletContexts!
at NullInjector.get (/Users/dominickdufner/music-app/dist/server/main.js:41980:27)
at resolveToken (/Users/dominickdufner/music-app/dist/server/main.js:56898:24)
at tryResolveToken (/Users/dominickdufner/music-app/dist/server/main.js:56824:16)
at StaticInjector.get (/Users/dominickdufner/music-app/dist/server/main.js:56674:20)
at resolveToken (/Users/dominickdufner/music-app/dist/server/main.js:56898:24)
at tryResolveToken (/Users/dominickdufner/music-app/dist/server/main.js:56824:16)
at StaticInjector.get (/Users/dominickdufner/music-app/dist/server/main.js:56674:20)
at resolveNgModuleDep (/Users/dominickdufner/music-app/dist/server/main.js:67861:29)
at NgModuleRef_.get (/Users/dominickdufner/music-app/dist/server/main.js:68927:16)
at resolveDep (/Users/dominickdufner/music-app/dist/server/main.js:69458:45)
at createClass (/Users/dominickdufner/music-app/dist/server/main.js:69311:32)
at createDirectiveInstance (/Users/dominickdufner/music-app/dist/server/main.js:69122:22)
at createViewNodes (/Users/dominickdufner/music-app/dist/server/main.js:80402:38)
at callViewAction (/Users/dominickdufner/music-app/dist/server/main.js:80852:13)
at execComponentViewsAction (/Users/dominickdufner/music-app/dist/server/main.js:80757:13)
at createViewNodes (/Users/dominickdufner/music-app/dist/server/main.js:80431:5)
Моя ошибка командной строки также имеет это в конце:
ngTempTokenPath: null,
ngTokenPath: [ 'router_RouterOutlet', [Function: ChildrenOutletContexts] ]
Вывод консоли браузера дает мне это: "Политика безопасности содержимого: страница Настройки заблокировали загрузку ресурса в http://localhost: 4000 / favicon.ico («default-src»). "
Я пробовал @ NgModule импортирует: [RouterModule.for Root (маршруты)] , упомянутый в этом посте в моем файле app.module.ts, но он не работает.
Я могу добавить дополнительную информацию о файле по запросу, или вы можете проверить мое репозиторий GitHub: https://github.com/DDufner/Angular-Music-App
К сожалению, я не могу опубликовать информацию о переходе из-за необходимости войдите, чтобы увидеть это. Если есть какая-либо информация, которая может быть полезна, я могу опубликовать ее позже.
Заранее спасибо.