除非“--module”标志为“amd”或“system”,否则无法使用选项“outFile”编译模块

Pis*_*e . 6 mongodb node.js typescript

我正在使用 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
Run Code Online (Sandbox Code Playgroud)

这是我的tsconfig.json

[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
Run Code Online (Sandbox Code Playgroud)

我正在gulp-typescript用来运行这个任务。这是我的配置:

.pipe(ts({ 
    module: "commonjs", 
    noImplicitAny: true, 
    target: "es5", 
    allowJs: true, 
    outDir: "dist", 
    noImplicitAny: true, 
    moduleResolution: "node" 
})
Run Code Online (Sandbox Code Playgroud)

谢谢。

mor*_*a71 4

我在 Visual Studio 2017 中使用 gulp 将 typescript 编译为 js 时遇到了同样的错误。我的解决方案是不使用没有 module: "system" 选项的 outFile 选项(请参阅第一个选项https://github.com/ivogabe/gulp-打字稿)。

我的设置: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));
Run Code Online (Sandbox Code Playgroud)

使用 outFile: 不带模块的输出时:“system”时出现错误: Scripts\Test.ts(1,1): error TS6131: Cannot compile module using option 'outFile' except the '--module' flag is 'amd'或“系统”。