ReferenceError:找不到变量:exports

时间:2017-04-07 12:51:59

标签: javascript typescript

问题:

为什么我收到以下错误?我忘记在我的HTML中添加脚本吗?

  

ReferenceError:找不到变量:exports

从typescript生成的javascript导致它:

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
/* more code */

额外:

tsconfig.json

{
  "compileOnSave": true,
  "compilerOptions": {
    "target": "es5",
    "noImplicitAny": true,
    "rootDir": ".",
    "sourceRoot": "../../../",
    "outDir": "../../../js/dist/",
    "sourceMap": false
  },
  "exclude": [
    "node_modules"
  ]
}

requirejs包含在我的js文件之前的html

有类似的问题,但这只是关于打字稿而不是关于ember / babel / etc。

1 个答案:

答案 0 :(得分:1)

我无法复制。您的tsconfig.json导致tsc

保释
  

错误TS5051:仅当提供选项“ --inlineSourceMap”或选项“ --sourceMap”时,才能使用选项“ sourceRoot”。

一旦我删除了sourceRoot选项,输出中就不会引用exports


$ ls

my.ts       tsconfig.json

$ cat my.ts

console.log(1)

$ cat tsconfig.json

{
  "compileOnSave": true,
  "compilerOptions": {
    "target": "es5",
    "noImplicitAny": true,
    "rootDir": ".",
    "sourceRoot": "../../../",
    "outDir": "../../../js/dist/",
    "sourceMap": false
  },
  "exclude": [
    "node_modules"
  ]
}

$ tsc --version

Version 3.5.3