运行Angular Universal应用程序失败-无法从单独的项目编译app.module.ts或识别服务

时间:2019-05-17 13:07:54

标签: angular angular-universal

我正在尝试将Angular应用程序转换为Angular Universal SSR应用程序。 该项目在应用程序根目录的“项目”文件夹中包含一个单独的应用程序模块(生成应用程序),该模块在主app.module.ts中导出,并包含在app-routing-module.ts中。该应用程序可以通过ng serve正常执行,并且添加通用支持不会返回错误。 但是,当我在PowerShell中运行npm run build:ssr -and npm run serve:ssr时,出现以下错误:

ERROR in src\app\app.module.ts(35,5): Error during template compile of 'AppModule'
  Could not resolve projects/{project name}/src/app/app.module relative to [object Object].. 
src/app/components/home/home.component.ts(2,30): error TS2307: Cannot find module 'src/app/services/xxx.service'.
src/app/app-routing.module.ts(3,40): error TS2307: Cannot find module 'projects/{project name}/src/app/app.module'.
src/app/components/xxx/xxx.component.ts(2,30): error TS2307: Cannot find module 'src/app/services/xxx.service'.
src/app/components/yyy/yyy.component.ts(2,30): error TS2307: Cannot find module 'src/app/services/xxx.service'.
src/app/components/qqq/qqq.component.ts(2,30): error TS2307: Cannot find module 'src/app/services/xxx.service'.
src/app/app.module.ts(7,40): error TS2307: Cannot find module 'projects/{project name}/src/app/app.module'.

问题不仅出在项目文件夹中,还在于它在“普通”目录中找不到唯一服务的事实。 我该如何解决这些问题?

1 个答案:

答案 0 :(得分:0)

请使用诸如相对导入路径之类的unix代替绝对导入路径,例如,在src/app/components/home/home.component.ts(2,30)中,使用../pathhome.component.ts之类的内容。