2017-03-11 12 views
16

Ich versuche Webpack an einem Projekt zu laufen und ich bin immer mehrere FehlerKann nicht Namen ‚PropertyKey‘

node_modules/@types/core-js/index.d.ts 
error TS2304: Cannot find name 'PropertyKey'. 
... 
node_modules/@types/core-js/index.d.ts 
error TS2339: Property 'for' does not exist on type 'SymbolConstructor'. 

finde ich meine Typisierungen alle installiert sein sollte, so bin ich nicht sicher, wo diese herkommen. Ich habe versucht, über eine package.json aus einem Projekt zu kopieren, das kompiliert, aber es hat nicht geholfen. Was vermisse ich?

Meine TSconfig sieht aus wie dieses

{ 
    "compilerOptions": { 
    "target": "es5", 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "sourceMap": true, 
    "noImplicitAny": false, 
    "suppressImplicitAnyIndexErrors": true 
    }, 
    "include": [ 
    "src/**/*" 
    ], 
    "exclude": [ 
    "node_modules", 
    "**/*.spec.ts" 
    ] 
} 

Antwort

34

ich die gleiche Art von Fehler mit @ Typen bekommen/Kern-js bei 0.9.35

könnte etwas anderes sein ..

EDIT

Es hat auf dem Repo einige Änderungen letzte Woche. Sie können die Ausgabe auf Github lesen und die Änderungen über diese Links:

https://github.com/DefinitelyTyped/DefinitelyTyped/issues/15104

https://github.com/DefinitelyTyped/DefinitelyTyped/pull/15108/commits/f2c5c990e448550fcebec071c25e6a1e5766dde7

Meine Lösung war in meiner TSconfig Dateien

"lib": ["es5", "dom"] zu "lib": ["es6", "dom"] im compilerOptions Objekt zu ändern.

Auf diese Weise habe ich die Fehler verschwinden, ohne

Hinweis 0.9.35 Herabstufung: Sie brauchen nicht das Ziel zu ändern (Mine noch ES5)

+0

es funktioniert für mich.Jedoch habe ich 2 Computer, die beide VS2015 Pro mit dem neuesten Update und Pakete laufen, eines hatte ein Problem, das durch diese Antwort behoben werden konnte, und das andere nicht. Ein bisschen seltsam. – ZZZ

+0

Vielleicht sucht man an der tsconfig nicht an der richtigen Stelle? Oder vielleicht hatte man die verbesserte Version der Typen und eine hatte eine andere. – Jackie

+2

Ändert der Wechsel zu ES6 den IE 11-Betrieb nicht? Mit anderen Worten, was sind die Auswirkungen auf ES6 und Browser Compliance? – Brandon

5

Herabstufung Ihre @types/core-js auf 0.9.35.

Ich hatte gerade das gleiche Problem nach dem Upgrade auf 0.9.37.

+0

Ich habe meine Version auf 0.9.36 heruntergestuft und es funktioniert. Danke: D –

2

Kann Laden Version 0.9.35 dies bestätigen fixiert für mich.

"devDependencies": { 
    ... 
    "@types/core-js": "0.9.35", 
    ... 
} 
7

Für mich war die Antwort ...

"compilerOptions": { 
    ... 
    "lib": [ 
    "es2016", 
    "dom" 
    ] 
}, 
2

Herabstufung "@ Typen/Kern-js": "^ 0.9.35" und fügte hinzu lib meiner Compiler.

"devDependencies": { 
    "@types/core-js": "^0.9.35", 
    ...... 
} 

tsconfig.json

{ 
"compilerOptions": { 
    ........ 
    "lib": [ 
     "es2016", 
     "dom" 
    ] 
}, 
"exclude": [ 
    "node_modules", 
    ... 
] 
} 
+0

Nachdem Sie "@ types/core-js" hinzugefügt haben: "^ 0.9.35", müssen Sie einen npm-Befehl ausführen? wie npm update oder sowas? Das funktioniert immer noch nicht für mich. – Sam

2

löste ich mein Problem durch diesen Code in tsconfig.json Zugabe

{ "Compiler": {

"experimentalDecorators": true, 
"moduleResolution": "node", 
    "lib": ["es2017", "dom"] //Please add this code in your tsconfig.json 

} , "ausschließen" : [ "node_modules" ] }

Verwandte Themen