TypeScript 错误:重复的标识符“LibraryManagedAttributes”

Leo*_*ban 5 javascript typescript reactjs

编译失败。

/moonholdings.io/node_modules/@types/react-dom/node_modules/@types/react/index.d.ts (2312,14):重复的标识符“LibraryManagedAttributes”。

不知道为什么我会得到这个。

我已经将我的等级"@types/node"从 10 降到了 8,但这不起作用。也尝试过"@types/node": "^9.6.7"

我的仓库: https: //github.com/Futuratum/moonholdings.io

我的package.json

{
  "name": "moonholdings.io",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "build-css": "node-sass-chokidar src/ -o src/ --source-map",
    "watch-css": "npm run build-css && node-sass-chokidar src/ -o src/ --watch --recursive --source-map",
    "start": "react-scripts-ts start",
    "build": "react-scripts-ts build",
    "test": "react-scripts-ts test --env=jsdom",
    "eject": "react-scripts-ts eject"
  },
  "dependencies": {
    "@types/react": "^16.4.14",
    "@types/react-redux": "^6.0.9",
    "node-sass-chokidar": "^1.3.3",
    "react": "^16.5.0",
    "react-dom": "^16.5.0",
    "react-redux": "^5.0.7",
    "react-router-dom": "^4.3.1",
    "react-scripts-ts": "2.17.0",
    "redux-thunk": "^2.3.0"
  },
  "devDependencies": {
    "@types/jest": "^23.3.2",
    "@types/node": "^8.10.29",
    "@types/react-dom": "^16.0.7",
    "typescript": "^3.0.3"
  }
}
Run Code Online (Sandbox Code Playgroud)

这是我的 tsconfig

    {
  "compilerOptions": {
    "traceResolution": false,
    "strictNullChecks": true,
    "noImplicitAny": true,
    "module": "esnext",
    "target": "es5",
    "lib": [
      "es2015",
      "es2017",
      "es6",
      "es7",
      "es5",
      "dom"
    ],
    "jsx": "react",
    "experimentalDecorators": true,
    "moduleResolution": "node",
    "baseUrl": "./src",
    "noUnusedLocals": true,
    "noUnusedParameters": false,
    "noImplicitAny": false,
    "allowSyntheticDefaultImports": true,
    "importHelpers": true,
    "strictFunctionTypes": false
  },
  "include": [
    "src/**/*",
    "webpack/**/*"
  ],
  "files": [
    "core.ts",
    "sys.ts",
    "types.ts",
    "tsc.ts",
    "registerServiceWorker.ts",
    "src/registerServiceWorker.ts",
    "src/setupTests.ts"
  ],
  "exclude": [
    "typings/browser.d.ts",
    "typings/browser",
    "typings",
    "node_modules",
    "build",
    "scripts",
    "acceptance-tests",
    "webpack",
    "jest"
  ]
}
Run Code Online (Sandbox Code Playgroud)

Dim*_*ski 9

您可能会发现重复项位于node_modules/@types/reactnode_modules/types/react-dom/@types/react/或类似的设置中,其中一个包对另一个包具有嵌套依赖关系。

一起卸载并重新安装 @types/react-dom 和 @types/react 为我解决了这个问题。

yarn remove @types/react-dom @types/react


yarn add -D @types/react-dom @types/react
Run Code Online (Sandbox Code Playgroud)


Leo*_*ban 1

我仍然不确定是什么导致了这个错误,但是我已经检查了我的应用程序的早期版本,它是稳定的。因此将从那里继续工作。

这是工作的 package.json

{
  "name": "moonholdings.io",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "start": "react-scripts-ts start",
    "build": "react-scripts-ts build",
    "test": "react-scripts-ts test --env=jsdom",
    "eject": "react-scripts-ts eject"
  },
  "dependencies": {
    "@types/jest": "^23.3.1",
    "@types/node": "^10.9.4",
    "@types/react": "^16.4.13",
    "@types/react-dom": "^16.0.7",
    "react": "^16.4.2",
    "react-dom": "^16.4.2",
    "react-ts-with-scss": "2.1.0",
    "typescript": "^3.0.3"
  },
  "devDependencies": {}
}
Run Code Online (Sandbox Code Playgroud)