npm 启动我的 Angular2 项目时出现重复标识符导出错误



当我通过npm启动命令运行我的Angular2项目时,我收到重复标识符导出"错误。我搜索了很多,但找不到解决问题的确切方法。你可以在下面找到package.json,typings.json和tsconfig.json。

问候阿尔珀

package.json
{
"name": "Angular2SampleProject2",
"version": "1.0.0",
"scripts": {
 "start": "tsc && concurrently "tsc -w" "lite-server" ",
 "e2e": "tsc && concurrently "http-server -s" "protractor 
 protractor.config.js" --kill-others --success first",
 "lint": "tslint ./app/**/*.ts -t verbose",
 "lite": "lite-server",
 "pree2e": "webdriver-manager update",
 "test": "tsc && concurrently "tsc -w" "karma start karma.conf.js"",
 "test-once": "tsc && karma start karma.conf.js --single-run",
"tsc": "tsc",
"tsc:w": "tsc -w"  },
"license": "ISC",
"dependencies": {
"@angular/common": "2.4.0",
"@angular/compiler": "2.4.0",
"@angular/core": "2.4.0",
"@angular/forms": "2.4.0",
"@angular/http": "2.4.0",
"@angular/platform-browser": "2.4.0",
"@angular/platform-browser-dynamic": "2.4.0",
"@angular/router": "3.4.0",
"angular-in-memory-web-api": "0.2.2",
"systemjs": "0.19.40",
"core-js": "2.4.1",
"reflect-metadata": "0.1.8",
"rxjs": "5.0.1",
"zone.js": "0.7.4"
  },
 "devDependencies": {
  "concurrently": "3.1.0",
  "lite-server": "2.2.2",
  "typescript": "2.0.10",
 "canonical-path": "0.0.2",
 "http-server": "^0.9.0",
 "tslint": "^3.15.1",
 "lodash": "^4.16.4",
 "jasmine-core": "~2.4.1",
 "karma": "^1.3.0",
"karma-chrome-launcher": "^2.0.0",
"karma-cli": "^1.0.1",
"karma-jasmine": "^1.0.2",
"karma-jasmine-html-reporter": "^0.2.2",
"protractor": "~4.0.14",
"rimraf": "^2.5.4",
"@types/node": "6.0.46",
"@types/jasmine": "2.5.36"
 }
 }

tsconfig.json

{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": [ "es2015", "dom" ],
"noImplicitAny": true,
"suppressImplicitAnyIndexErrors": true
}
}

错误信息:

  Types of property 'pause' are incompatible.
  Type '() => void' is not assignable to type '() => ReadWriteStream'.
    Type 'void' is not assignable to type 'ReadWriteStream'.
  typings/globals/node/index.d.ts(2301,5): error TS2300: Duplicate 
  identifier 'export='.typings/globals/node/index.d.ts(2323,18): error 
TS2300: Duplicate    identifier 'Domain'.
npm ERR! Windows_NT 6.3.9600
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\ProgramFiles\nodejs\node_modules\npm\bin\npm-cli.js" "start"
 npm ERR! node v4.4.4
 npm ERR! npm  v2.15.1
 npm ERR! code ELIFECYCLE
 npm ERR! Angular2SampleProject2@1.0.0 start: `tsc && concurrently "tsc -w""lite
-server" `npm ERR! Exit status 2
 npm ERR!
 npm ERR! Failed at the Angular2SampleProject2@1.0.0 start script 'tsc && 
 concurrently "tsc -w" "lite-server" '.
 npm ERR! This is most likely a problem with the Angular2SampleProject2 

包,npm 错误!不是 npm 本身。 呵呵!告诉作者这在您的系统上失败: 呵呵! TSC && 同时 "TSC -w" "lite-server" 呵呵!您可以获取有关如何为此项目打开问题的信息 与:npm 错误! npm bug Angular2SampleProject2 呵呵!或者,如果不可用,您可以通过以下方式获取他们的信息: 呵呵! 呵呵! npm 所有者 ls Angular2SampleProject2 呵呵!上面可能有其他日志记录输出。

呵!请在任何支持请求中包含以下文件:呵呵! C:\Users\kopuz\workspace\Angular2SampleProject2pm-debug.log

几天

前我遇到了同样的问题。我通过以下方式修复了相同的问题:

  • 将我的节点版本更新为 7.7.2
  • 更新到 package.json 中的"@angular/compiler": "~2.4.9", "@angular/core": "~2.4.9"

这是我的 tsconfig 现在看起来像:

{
  "compilerOptions": {
    "target": "es6",
    "module": "commonjs",
    "moduleResolution": "node",
    "sourceMap": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "removeComments": false,
    "noImplicitAny": true,
    "lib": [
      "es6",
      "dom"
    ]
  },
  "typeRoots": [
    "node_modules/@types"
  ],
  "types": [
    "core-js",
    "hammerjs"
  ],
  "exclude": [
    "node_modules"
  ]
}

最新更新