我有一个带有tsconfig.json
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"sourceMap": true,
"inlineSources": true,
"lib": [
"es6",
"dom"
],
"types": [
"node"
],
"moduleResolution": "node",
"experimentalDecorators": true,
"emitDecoratorMetadata": true
}
}
我正在运行脚本"test:integration": "./node_modules/typescript/bin/tsc && mocha test/integration/** --recursive"
/Users/mm81509/projects/coverpath-producer-management/test/integration /Example.js.map:1
(function (exports, require, module, __filename, __dirname) { {"version":3,"file":"Example.js","sourceRoot":"","sources":["Example.ts"],"names":[],"mappings":"","sourcesContent":[""]}
^
SyntaxError: Unexpected token :
...
什么会导致typescript编译器在map.js中出现语法错误?我只在项目中的那个文件中看到此错误。
答案 0 :(得分:1)
您在.map
文件上收到错误。这些文件用于将源行映射到编译行。调整传递给Mocha的glob模式,这样它就不会尝试将.map
文件作为测试文件加载。类似的东西:
mocha 'test/integration/**/*.js' --recursive
它只会加载.js
个文件,而不会加载.map
个文件。我建议使用单引号来保护模式不被shell扩展。您希望模式按原样传递给Mocha,而不是由shell解释。