首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CLI从1.2.8升级到1.3.0后,角5断了

CLI从1.2.8升级到1.3.0后,角5断了
EN

Stack Overflow用户
提问于 2017-11-29 17:48:40
回答 2查看 154关注 0票数 1

我有一个角5应用程序,以前运行在角CLI 1.2.8,一切都很好。在升级到1.3之后(在我到1.5.4的路上),当我访问localhost:4200时,当我得到一个NullInjectorError: No provider for Http!时,外部npm链接libary似乎出现了问题。

当我将HttpModule添加到共享库模块时,错误就消失了,但是我得到了额外的提供程序错误。我期待共享库像以前一样使用主应用程序中的模块,而不是共享库模块。在本例中,共享库具有依赖于HttpModule的角服务,但是shard-lib不导入HttpModule。我使用的主要项目是导入HttpModule。

我的tsconfig.json:

代码语言:javascript
复制
{
  "compileOnSave": false,
  "compilerOptions": {
    "outDir": "./dist/out-tsc",
    "baseUrl": "src",
    "sourceMap": true,
    "declaration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "typeRoots": [
      "node_modules/@types"
    ],
    "types": [ "node", "jasmine" ],
    "lib": [
      "es2016",
      "dom"
    ],
    "paths": {
      "rxjs/*": [
        "node_modules/rxjs/*"
      ],
      "@angular/*": [
        "node_modules/@angular/*"
      ]
    }
  }
}

我的tsconfig.app.json:

代码语言:javascript
复制
{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "module": "es2015",
    "baseUrl": "",
    "types": []
  },
  "include": [
    "./**/*.ts",
    "../node_modules/shared-lib/src/**/*.ts",
    "../node_modules/shared-lib/index.ts",
    "../node_modules/shared-lib/shared-lib.ts"
  ],
  "exclude": [
    "test.ts",
    "**/*.spec.ts",
    "../node_modules/shared-lib/**/*.spec.ts"
  ],
  "typeRoots": [
    "node_modules/@types"
  ],
  "types": [ "node" ]
}

更新:我发现在删除了共享库(Shared node_modules )中的@文件夹后,该项目可以工作。我不知道为什么他们在tsconfig.json中的路径对象没有覆盖到我的项目的node_modules的使用。

EN

回答 2

Stack Overflow用户

发布于 2017-11-29 19:51:29

我遇到了一个与当前节点版本不兼容的角/cli版本类似的问题。问题在于升级依赖项。这通常发生在您从较低版本的角升级到任何其他更高版本。您可以尝试以下步骤:

代码语言:javascript
复制
npm outdated  --> To list latest and current package details in local application.
npm update    --> to update the local packages.

如果仍然无法工作,请尝试删除“node_modules”文件夹并安装install的依赖项:

代码语言:javascript
复制
npm install

然后,您可以检查所有包,包括cli是否都没有过时。

票数 0
EN

Stack Overflow用户

发布于 2017-11-30 00:06:00

会不会是因为不推荐的HttpModule而产生某种冲突呢?对于最近的版本,您应该使用HttpClientModule,因为不推荐使用HttpModule。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47558776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档