«Uncaught SyntaxError: неожиданный токен {» при импорте в TypeScript - PullRequest
0 голосов
/ 03 сентября 2018

Вопрос: Почему я получаю «Uncaught SyntaxError: Неожиданный токен {» во второй строке файла Game.ts?

У меня есть два машинописных файла, перечисленных ниже. Я не получаю никаких ошибок при компиляции моего проекта через визуальную студию. Однако, когда я смотрю на консоль в своем браузере (пробовал другие), я получаю эту ошибку, и моя игровая сцена не отображается. Я использую TypeScript 3.0 и ES6.

ColorHelper.ts

export class Color {
    ColorFromRGB(r: number, g: number, b: number): BABYLON.Color3 {
        return new BABYLON.Color3(r / 255, g / 255, b / 255);
    }
}

Game.ts

///<reference path="../node_modules/babylonjs/babylon.d.ts" />
import { Color } from "./helpers/ColorHelper";

class Game {
    ...
}

Вот мой tsconfig.json

{
  "compileOnSave": true,
  "compilerOptions": {
    "types": [ "babylonjs" ],
    "target": "es6",
    "sourceMap": true,
    "module": "es6"
  }
}

Вот мой пакет. Json

{
  "name": "BabylonTest",
  "version": "1.0.0",
  "description": "",
  "main": "Game.js",
  "directories": {
    "lib": "lib"
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "babylonjs": "^3.2.0"
  }
}

1 Ответ

0 голосов
/ 03 сентября 2018

При использовании ES6 вы должны не забыть добавить модуль compilerOptions, цель - ES6, но модуль - commonjs

  {  
        "compilerOptions": {
             "module": "commonjs", // add this instead of es6 as module
        }
    }
...