2017-04-03 28 views
0

Ich versuche, eine ASP.NET Core App in VS 2017 zu konvertieren. Leider kann ich die Site nicht kompilieren, da ich ständig TypeScript-Fehler erhalte. Ich würde VS lieber nicht einmal mit meinem TypeScript ansprechen, da ich Webpack für die eigentliche Erstellung und Bündelung verwende.Visual Studio 2017 TypeScript-Kompilierungsfehler

Die Website verfügt über eine App Angular 2, einschließlich einiger Tests. Hier ist ein Beispiel Fehler:

Error TS2665 Build:Invalid module name in augmentation. Module 'angular-mocks/ngMock' resolves to an untyped module at 'D:/myapp/source/MySite/node_modules/angular-mocks/ngMock.js', which cannot be augmented. MySite D:\myapp\source\MySite\node_modules\@types\angularjs\angular-mocks.d.ts 8

Meine app/tsconfig.json Datei sieht wie folgt aus:

{ 
    "compilerOptions": { 
    "noImplicitAny": false, 
    "noEmitOnError": true, 
    "removeComments": false, 
    "experimentalDecorators": false, 
    "sourceMap": false, 
    "module": "commonjs", 
    "moduleResolution": "node", 
    "skipLibCheck": true, 
    "skipDefaultLibCheck": true, 
    "target": "es5", 
    "typeRoots": [ 
     "../node_modules/@types" 
    ], 

    "lib": [ 
     "es2016", 
     "dom" 
    ] 
    }, 
    "exclude": [ 
    "../node_modules", 
    "../wwwroot" 
    ], 
    "compileOnSave": false 
} 

Gibt es eine Möglichkeit VS zu sagen, ganz mein Typoskript ignorieren beim Bau? Ich weiß nicht, warum es diese Dateien überhaupt ansieht.

+0

Es ist möglich, dass Visual Studio eine ältere Version des TypeScript-Compilers verwendet. Können Sie bestätigen, dass tatsächlich das neueste TypeScript verwendet wird? –

+0

Ich glaube nicht, dass ich 2017 die Wahl habe, oder? Es gibt keine neuere Version, die ich installieren kann. Ich verwende 2.1 so weit ich weiß, was mit 2017 kam. –

+0

Mein 'tsconfig.json' Dateispeicherort ist eine Ebene höher als deins ... und es hat dieses" baseUrl ":" src "," und ich habe nicht einmal die Einstellung "exclude". –

Antwort

5

Wenn Sie nicht möchten, dass VS 2017 Ihr Typescript für Sie kompiliert, finden Sie in der folgenden Dokumentation von TypeScript Handbook, um die Kompilierung in MSBuild zu deaktivieren.

TypeScriptCompileBlocked

If you are using a different build tool to build your project (e.g. gulp, grunt , etc.) and VS for the development and debugging experience, set <TypeScriptCompileBlocked>true</TypeScriptCompileBlocked> in your project. This should give you all the editing support, but not the build when you hit F5.