Att kompilera TypeScript i Visual Studio ger felet "Oväntad token..."


Jag arbetar på ett stort och komplext Node-projekt i Visual Studio 2013 uppdatering 5. Jag har tsc version 1.8.5 installerad och kan inte hitta några referenser på mitt system till någon annan version. När jag kompilerar via kommandoraden med "tsc --module commonjs" kompileras programmet utan problem.

När jag kompilerar i Visual Studio får jag felet

Build: Unexpected token; 'module, class, interface, enum, import or statement expected'

Filen som flaggats är express.d.ts.

Detta hindrar mig från att köra felsökaren, även om jag kan kompilera på kommandoraden. Är det något med VS som är felkonfigurerat?

James

Svar #1

Givet kommandoraden som fungerar, gissar jag att du behöver ändra din tsconfg.json

Importbitarna där nere är uppenbarligen "module": "commonjs"

Detta är en komplett "standard" tsconfig-fil för användning med Typings v1.0.0 eller högre.

{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "declaration": false,
    "removeComments": true,
    "noLib": false,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "sourceMap": true,
    "pretty": true,
    "allowUnreachableCode": false,
    "allowUnusedLabels": false,
    "noImplicitAny": true,
    "noImplicitReturns": true,
    "noImplicitUseStrict": false,
    "noFallthroughCasesInSwitch": true
  },
  "exclude": [
    "node_modules",
    "typings/index.d.ts",
    "typings/modules"
  ],
  "compileOnSave": false
}

Svar #2

Högerklicka på projektet och välj "Egenskaper". I fliken Typescript väljer du rätt modulsystem (detta kommer att lägga till rätt kompilatorflagor)