首页 > 解决方案 > Angular 通用 Webpack 问题

问题描述

我正在尝试使用 Angular Universal 开展一个项目,几个月前我开始基于Universal-starterngx-quill-editor package ,最终我添加了许多包,直到其中一些包破坏了我的应用程序,更具体地说,这个包有由于quill库依赖于许多 DOM 环境变量的问题,许多建议是模拟模块并将其替换为webpack.NormalModuleReplacement plugin,但是到那时我依赖于ng-cli build tool,所以我需要更改配置以手动使用 webpack 而不是ng-cli构建,因为无法弹出服务器应用程序的配置,我尝试根据Universal-starter tree angular-5.0自己配置我的项目

我目前的状态如下,我能够编译我的项目:

如果我使用 AOT 编译,则浏览器应用程序(任何问题)服务器应用程序(无需 AOT 即可正常编译):

     ERROR in ./server/server.ts
    Module not found: Error: Can't resolve './../public/src/$$_gendir/app/app.server.module.ngfactory' in '/home/victor/Documents/Personal/Projects/angular-boilerplate/Angular-Universal-Blog/server'
     @ ./server/server.ts 22:36-104

    ERROR in Error: Please update @angular/cli. Angular 5+ requires at least Angular CLI 1.5+ ...

没有“aot”编译的服务器应用程序能够运行,但是只要我点击任何 URL,我就会遇到一些错误:

    { Error: StaticInjectorError(AppServerModule)[NotificationComponent -> ChangeDetectorRef]:
  StaticInjectorError(Platform: core)[NotificationComponent -> ChangeDetectorRef]:
    NullInjectorError: No provider for ChangeDetectorRef!
    at _NullInjector.get (/home/victor/Documents/Personal/Projects/angular-boilerplate/Angular-Universal-Blog/dist/server/server.js:1323:19)

有人可以帮忙弄清楚我的配置有什么问题吗?基本上我想要my app configure to be build with webpack instead of ng-cli,这至少对于服务器构建。

的 git repo如下,我的最后一个进展是在“dev”分支

标签: angulartypescriptwebpackmeanangular-universal

解决方案


推荐阅读