Definitelytyped: @types/core-js konflik dengan TypeScript/lib/lib.es6.d.ts ketika @types/core-js tidak benar-benar digunakan

Dibuat pada 4 Okt 2016  ·  12Komentar  ·  Sumber: DefinitelyTyped/DefinitelyTyped

Repositori reproduksi sederhana: https://github.com/plantain-00/test , setelah npm i && npm run build , kesalahannya adalah:

node_modules/@types/core-js/index.d.ts(21,14): error TS2300: Duplicate identifier 'PropertyKey'.
node_modules/typescript/lib/lib.es6.d.ts(4133,14): error TS2300: Duplicate identifier 'PropertyKey'.

Diharapkan: tidak ada kesalahan, karena app.ts kosong. @types/core-js digunakan dalam static/app.ts .

  "devDependencies": {
    "@types/core-js": "^0.9.34",
    "core-js": "^2.4.1",
    "typescript": "^2.0.3"
  }
@types

Komentar yang paling membantu

memiliki masalah serupa. Menambahkan "skipLibCheck": true ke compilerOptions di tsconfig.json dan kemudian membantu

Semua 12 komentar

Bagian mana dari core-js yang diperlukan yang tidak termasuk dalam lib.es6? Tidak bisakah Anda tidak menginstal @types/core-js ?

@aciccarello core-js dan @types/core-js digunakan oleh frontend di static/app.ts , bagian ini berfungsi dengan baik

Ada 2 tsconfig.json , satu untuk backend(es6, kesalahan terjadi di sini), dan yang lainnya untuk frontend(es5, tidak ada kesalahan, berfungsi dengan baik),

@ pisang raja-00 Apakah Anda mengetahuinya?
Saya mengalami masalah serupa, di mana saya ingin menggunakan beberapa fitur non-standar core-js (Kamus), tetapi jenisnya bertentangan dengan perpustakaan TypeScripts.

@jefbarn Untuk fitur non-standar, saya tidak punya solusi.
Untuk fitur standar, saya menghapus @types/core-js , dan menghapus import "core-js"; , karena core-js adalah polyfills dari ES2015+, jadi saya dapat menggunakan typescript/lib/lib.es6.d.ts sebagai gantinya, tsconfig.json seperti:

{
    "compilerOptions": {
        "module": "commonjs",
        "target": "es5",
        "lib": [
            "es2015",
            "es5",
            "dom",
            "scripthost"
        ]
    }
}

Sepertinya masalah ini masih diperlukan, saya akan membuka kembali ini.

Saya mengalami masalah ini menggunakan @types\core-js dan menargetkan ES6

@anorborg Saya membuat situasi saya bekerja menggunakan sesuatu seperti ini:

  "compilerOptions": {
    "module": "commonjs",
    "target": "es6",
    "moduleResolution": "node",
    "lib": ["es5", "dom"],
    ...
  }

@jefbarn yang berhasil. Pada dasarnya lib core-js dan TypeScript 2.x es6.d.ts saling bertentangan dan itu memberi tahu TypeScript untuk tidak menggunakannya es6.d.ts . Saya _think_ solusi yang lebih _pure_ adalah membuat beberapa definisi tipe modul untuk core-js (yaitu core-js-es6-object ) alih-alih memasukkan seluruh definisi core-js . Saya mencoba memulai ini secara lokal, tetapi tidak dapat membuat tipe kustom lokal berfungsi. Jika saya punya waktu, saya akan mencoba mencari tahu dan membuat PR untuk semua modul.

Bersiaplah untuk perhatian.

Saya baru saja membuat proyek baru dengan tsc 2.2.0 menggunakan konfigurasi ts ini:

{
  "compilerOptions": {
    "outDir": "./build/",
    "rootDir": "./src/",
    "baseUrl": ".",
    "sourceMap": true,
    "noImplicitAny": false,
    "module": "commonjs",
    "target": "es6"
  },
  "include": [
    "./src/**/*.ts"
  ],
  "compileOnSave": false
}

Yang akan menghasilkan kesalahan ini:

node_modules/@types/core-js/index.d.ts(21,14): error TS2300: Duplicate identifier 'PropertyKey'.
node_modules/@types/core-js/index.d.ts(85,5): error TS2687: All declarations of 'name' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(145,5): error TS2403: Subsequent variable declarations must have the same type.  Variable '[Symbol.unscopables]' must be of type '{ copyWithin: boolean; entries: boolean; fill: boolean; find: boolean; findIndex: boolean; keys: ...', but here has type 'any'.
node_modules/@types/core-js/index.d.ts(262,5): error TS2687: All declarations of 'flags' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(276,5): error TS2687: All declarations of 'EPSILON' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(311,5): error TS2687: All declarations of 'MAX_SAFE_INTEGER' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(318,5): error TS2687: All declarations of 'MIN_SAFE_INTEGER' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(457,5): error TS2403: Subsequent variable declarations must have the same type.  Variable '[Symbol.toStringTag]' must be of type '"Symbol"', but here has type 'string'.
node_modules/@types/core-js/index.d.ts(457,5): error TS2687: All declarations of '[Symbol.toStringTag]' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(464,5): error TS2687: All declarations of 'prototype' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(492,5): error TS2687: All declarations of 'hasInstance' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(498,5): error TS2687: All declarations of 'isConcatSpreadable' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(504,5): error TS2687: All declarations of 'iterator' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(510,5): error TS2687: All declarations of 'match' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(516,5): error TS2687: All declarations of 'replace' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(522,5): error TS2687: All declarations of 'search' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(528,5): error TS2687: All declarations of 'species' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(534,5): error TS2687: All declarations of 'split' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(540,5): error TS2687: All declarations of 'toPrimitive' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(546,5): error TS2687: All declarations of 'toStringTag' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(552,5): error TS2687: All declarations of 'unscopables' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(609,5): error TS2403: Subsequent variable declarations must have the same type.  Variable '[Symbol.toStringTag]' must be of type '"Math"', but here has type 'string'.
node_modules/@types/core-js/index.d.ts(609,5): error TS2687: All declarations of '[Symbol.toStringTag]' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(613,5): error TS2403: Subsequent variable declarations must have the same type.  Variable '[Symbol.toStringTag]' must be of type '"JSON"', but here has type 'string'.
node_modules/@types/core-js/index.d.ts(613,5): error TS2687: All declarations of '[Symbol.toStringTag]' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(628,5): error TS2687: All declarations of 'size' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(634,5): error TS2687: All declarations of 'prototype' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(645,5): error TS2687: All declarations of 'size' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(651,5): error TS2687: All declarations of 'prototype' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(656,11): error TS2428: All declarations of 'WeakMap' must have identical type parameters.
node_modules/@types/core-js/index.d.ts(664,27): error TS2344: Type 'K' does not satisfy the constraint 'object'.
node_modules/@types/core-js/index.d.ts(665,53): error TS2344: Type 'K' does not satisfy the constraint 'object'.
node_modules/@types/core-js/index.d.ts(666,5): error TS2687: All declarations of 'prototype' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(680,5): error TS2687: All declarations of 'prototype' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(692,5): error TS2687: All declarations of 'value' must have identical modifiers.
node_modules/@types/core-js/index.d.ts(804,5): error TS2687: All declarations of 'prototype' must have identical modifiers.
node_modules/typescript/lib/lib.es6.d.ts(4199,14): error TS2300: Duplicate identifier 'PropertyKey'.

Mengubah target ke es5 menghasilkan build yang bersih.

Saya tidak yakin bagaimana masalah ini mendapat begitu sedikit perhatian; pasti banyak orang yang mencoba menargetkan ES6 dengan TS dan juga akan mengalami ini?

@wyqydsyq core.js dan ES6 keduanya mendefinisikan banyak definisi yang sama. Jangan sertakan @types/core.js atau atur "lib": ["es5", "dom"], di tsconfig Anda

Saya juga mendapatkan jenis konflik yang sama.

1>c:\Program Files (x86)\Microsoft SDKs\TypeScript\2.6\lib.es2015.iterable.d.ts (203,11): kesalahan TS2300: Build: Duplicate identifier 'Promise'.1>c:\Program Files (x86)\Microsoft SDKs\TypeScript\2.6\lib.es2015.promise.d.ts(223,13): kesalahan TS2300: Build: Pengidentifikasi duplikat 'Janji'.1>c:\Program Files (x86)\Microsoft SDKs\TypeScript\2.6\lib.es2015.symbol.wellknown.d.ts(168,11): kesalahan TS2300: Build: Pengidentifikasi duplikat 'Janji'.1>c:\Program Files (x86)\Microsoft SDKs\TypeScript\2.6\lib.es5.d.ts(1292,11): kesalahan TS2300: Build: Pengidentifikasi duplikat 'Janji'.1>c:\users\username\node_modules\@types\es6-promise\index.d.ts (11,15): kesalahan TS2300: Build: Duplicate identifier 'Promise'.1>c:\users\username\node_modules\@types\es6-promise\index.d.ts(42,19): kesalahan TS2300: Build: Pengidentifikasi

tsconfig: -

{
"compilerOptions": {
"target": "es5",
"modul": "umum",
"moduleResolution": "simpul",
"sourceMap": benar,
"emitDecoratorMetadata": benar,
"experimentalDecorators": benar,
"lib": ["es2015", "dom" ],
"noImplicitAny": benar,
"suppressImplicitAnyIndexErrors": benar,
"noStrictGenericChecks": benar
}
}

Paket.Json:

{
  "name": "angular-quickstart",
  "version": "1.0.0",
  "description": "QuickStart package.json from the documentation, supplemented with testing support",
  "scripts": {
    "build": "tsc -p src/",
    "build:watch": "tsc -p src/ -w",
    "build:e2e": "tsc -p e2e/",
    "serve": "lite-server -c=bs-config.json",
    "serve:e2e": "lite-server -c=bs-config.e2e.json",
    "prestart": "npm run build",
    "start": "concurrently \"npm run build:watch\" \"npm run serve\"",
    "pree2e": "npm run build:e2e",
    "e2e": "concurrently \"npm run serve:e2e\" \"npm run protractor\" --kill-others --success first",
    "preprotractor": "webdriver-manager update",
    "protractor": "protractor protractor.config.js",
    "pretest": "npm run build",
    "test": "concurrently \"npm run build:watch\" \"karma start karma.conf.js\"",
    "pretest:once": "npm run build",
    "test:once": "karma start karma.conf.js --single-run",
    "lint": "tslint ./src/**/*.ts -t verbose"
  },
  "keywords": [],
  "author": "",
  "license": "MIT",
  "dependencies": {
    "@angular/common": "~4.3.4",
    "@angular/compiler": "~4.3.4",
    "@angular/core": "~4.3.4",
    "@angular/forms": "~4.3.4",
    "@angular/http": "~4.3.4",
    "@angular/platform-browser": "~4.3.4",
    "@angular/platform-browser-dynamic": "~4.3.4",
    "@angular/router": "~4.3.4",
    "angular-in-memory-web-api": "~0.3.0",
    "systemjs": "0.19.40",
    "core-js": "^2.4.1",
    "rxjs": "5.0.1",
    "zone.js": "^0.8.4"
  },
  "devDependencies": {
    "concurrently": "^3.2.0",
    "lite-server": "^2.2.2",
    "typescript": "2.6.0",
    "canonical-path": "0.0.2",
    "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"
  },
  "repository": {}
}

npm 5.5.1
simpul 8.9.1

Ada solusi?

memiliki masalah serupa. Menambahkan "skipLibCheck": true ke compilerOptions di tsconfig.json dan kemudian membantu

Hai

./node_modules/@types/core-js/index.d.ts:1461:36 - kesalahan TS2339: Properti 'untuk' tidak ada pada tipe 'SymbolConstructor'.

1461 const _for: typeof core.Symbol.for;
~~~

../node_modules/@types/core-js/index.d.ts:1465:43 - kesalahan TS2339: Properti 'hasInstance' tidak ada pada tipe 'SymbolConstructor'.

1465 const hasInstance: typeof core.Symbol.hasInstance;
~ ~ ~

../node_modules/@types/core-js/index.d.ts:1469:50 - kesalahan TS2339: Properti 'isConcatSpreadable' tidak ada pada tipe 'SymbolConstructor'.

1469 const adalahConcatSpreadable: typeof core.Symbol.isConcatSpreadable;
~ ~ ~ ~~~

../node_modules/@types/core-js/index.d.ts:1477:38 - kesalahan TS2339: Properti 'keyFor' tidak ada pada tipe 'SymbolConstructor'.

1477 const keyFor: typeof core.Symbol.keyFor;
~ ~

../node_modules/@types/core-js/index.d.ts:1481:37 - kesalahan TS2339: Properti 'cocok' tidak ada pada jenis 'SymbolConstructor'.

1481 const match: typeof core.Symbol.match;
~

../node_modules/@types/core-js/index.d.ts:1485:39 - error TS2339: Properti 'replace' tidak ada pada tipe 'SymbolConstructor'.

1485 const replace: typeof core.Symbol.replace;
~ ~~

../node_modules/@types/core-js/index.d.ts:1489:38 - kesalahan TS2339: Properti 'pencarian' tidak ada pada jenis 'SymbolConstructor'.

1489 const search: typeof core.Symbol.search;
~ ~

../node_modules/@types/core-js/index.d.ts:1493:39 - kesalahan TS2339: Properti 'spesies' tidak ada pada tipe 'SymbolConstructor'.

1493 spesies const: jenis inti.Simbol.spesies;
~ ~~

../node_modules/@types/core-js/index.d.ts:1497:37 - kesalahan TS2339: Properti 'split' tidak ada pada tipe 'SymbolConstructor'.

1497 const split: typeof core.Symbol.split;
~

../node_modules/@types/core-js/index.d.ts:1501:43 - kesalahan TS2339: Properti 'toPrimitive' tidak ada pada tipe 'SymbolConstructor'.

1501 const toPrimitive: typeof core.Symbol.toPrimitive;
~ ~ ~

../node_modules/@types/core-js/index.d.ts:1505:43 - kesalahan TS2339: Properti 'toStringTag' tidak ada pada tipe 'SymbolConstructor'.

1505 const toStringTag: typeof core.Symbol.toStringTag;
~ ~ ~

../node_modules/@types/core-js/index.d.ts:1509:43 - kesalahan TS2339: Properti 'unscopables' tidak ada pada tipe 'SymbolConstructor'.

1509 const unscopables: typeof core.Symbol.unscopables;
~ ~ ~

../node_modules/@types/core-js/index.d.ts:2272:36 - kesalahan TS2339: Properti 'untuk' tidak ada pada jenis 'SymbolConstructor'.

2272 const _for: typeof core.Symbol.for;
~~~

../node_modules/@types/core-js/index.d.ts:2276:43 - error TS2339: Properti 'hasInstance' tidak ada pada tipe 'SymbolConstructor'.

2276 const hasInstance: typeof core.Symbol.hasInstance;
~ ~ ~

../node_modules/@types/core-js/index.d.ts:2280:50 - kesalahan TS2339: Properti 'isConcatSpreadable' tidak ada pada tipe 'SymbolConstructor'.

2280 const adalahConcatSpreadable: typeof core.Symbol.isConcatSpreadable;
~ ~ ~ ~~~

../node_modules/@types/core-js/index.d.ts:2288:38 - kesalahan TS2339: Properti 'keyFor' tidak ada pada tipe 'SymbolConstructor'.

2288 const keyFor: typeof core.Symbol.keyFor;
~ ~

../node_modules/@types/core-js/index.d.ts:2292:37 - kesalahan TS2339: Properti 'cocok' tidak ada pada jenis 'SymbolConstructor'.

2292 const match: typeof core.Symbol.match;
~

../node_modules/@types/core-js/index.d.ts:2296:39 - error TS2339: Properti 'replace' tidak ada pada tipe 'SymbolConstructor'.

2296 const replace: typeof core.Symbol.replace;
~ ~~

../node_modules/@types/core-js/index.d.ts:2300:38 - kesalahan TS2339: Properti 'pencarian' tidak ada pada jenis 'SymbolConstructor'.

2300 pencarian const: typeof core.Symbol.search;
~ ~

../node_modules/@types/core-js/index.d.ts:2304:39 - kesalahan TS2339: Properti 'spesies' tidak ada pada tipe 'SymbolConstructor'.

2304 spesies const: typeof core.Simbol.species;
~ ~~

../node_modules/@types/core-js/index.d.ts:2308:37 - error TS2339: Properti 'split' tidak ada pada tipe 'SymbolConstructor'.

2308 const split: typeof core.Symbol.split;
~

../node_modules/@types/core-js/index.d.ts:2312:43 - kesalahan TS2339: Properti 'toPrimitive' tidak ada pada tipe 'SymbolConstructor'.

2312 const toPrimitive: typeof core.Symbol.toPrimitive;
~ ~ ~

../node_modules/@types/core-js/index.d.ts:2316:43 - kesalahan TS2339: Properti 'toStringTag' tidak ada pada tipe 'SymbolConstructor'.

2316 const toStringTag: typeof core.Symbol.toStringTag;
~ ~ ~

../node_modules/@types/core-js/index.d.ts:2320:43 - error TS2339: Properti 'unscopables' tidak ada pada tipe 'SymbolConstructor'.

2320 const unscopables: typeof core.Symbol.unscopables;
~ ~ ~

Ini adalah kesalahan yang saya dapatkan

tsconfig saya
{
"compileOnSave": salah,
"compilerOptions": {
"baseUrl": "",
"outDir": "./dist/out-tsc",
"sourceMap": benar,
"deklarasi": salah,
"downlevelIteration": benar,
"experimentalDecorators": benar,
"modul": "es6",
"moduleResolution": "simpul",
"importHelpers": benar,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es5",
"es2015",
"es2017",
"dom",
"host skrip"
],
},
"angularCompilerOptions": {
"fullTemplateTypeCheck": benar,
"strictInjectionParameters": benar
}
}
bantu saya untuk menyelesaikan masalah

Apakah halaman ini membantu?
0 / 5 - 0 peringkat