我正在使用 Typescript 构建一个 Node-Mongodb 服务器并在构建时遇到此错误:
[14:57:05] Using gulpfile ~/Desktop/mean/gulpfile.js
[14:57:05] Starting 'default'...
[14:57:05] Finished 'default' after 9.48 ms
[14:57:06] Starting 'build'...
server/app.ts(1,1): error TS6131: Cannot compile modules using option 'outFile' unless the '--module' flag is 'amd' or 'system'.
TypeScript: 1 semantic error
TypeScript: emit succeeded (with errors)
[14:57:08] Finished 'build' after 2.17 s
这是我的 tsconfig.json
:
{
"compilerOptions": {
"module": "commonjs",
"target": "es6",
"allowJs": true,
"noImplicitAny": true,
"moduleResolution": "node",
"sourceMap": true,
"outDir": "dist",
"baseUrl": "."
},
"include": [
"./server/**/*"
],
"exclude": [
"node_modules"
]
}
我正在使用 gulp-typescript
运行此任务。这是我的配置:
.pipe(ts({
module: "commonjs",
noImplicitAny: true,
target: "es5",
allowJs: true,
outDir: "dist",
noImplicitAny: true,
moduleResolution: "node"
})
谢谢。
最佳答案
我在 Visual Studio 2017 中使用 gulp 将 typescript 编译为 js 时遇到了同样的错误。 我的解决方案是在没有模块的情况下不使用 outFile 选项:“系统”选项(参见第一个选项 https://github.com/ivogabe/gulp-typescript )。
我的设置: Visual Studio 2017 15.7.4 packages.json > "gulp-typescript": "4.0.2", "typescript": "2.8.4", "@types/jquery": "3.3.4"
gulpfile.js 中的 typescript 编译任务
gulp.src(source)
.pipe(ts({
noImplicitAny: true,
//outFile: output,
//module: "system"
}))
.pipe(gulp.dest(destination));
当使用 outFile: output without module: "system"我得到错误: Scripts\Test.ts(1,1):错误 TS6131:无法使用选项“outFile”编译模块,除非“--module”标志为“amd”或“system”。
关于node.js - 无法使用选项 'outFile' 编译模块,除非 '--module' 标志为 'amd' 或 'system',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48767544/