【问题标题】:TypeScript: how to tell WebStorm to use CommonJS rather than AMDTypeScript:如何告诉 WebStorm 使用 CommonJS 而不是 AMD
【发布时间】:2016-02-29 23:27:00
【问题描述】:

我正在使用 WebStorm 在 TypeScript 中构建 Node.js 应用程序。当我编写“require”语句时,TypeScript 编译器使用 AMD。我通过异步模式的 js 输出知道这一点。

我如何让 WebStorm 使用 CommonJS?

【问题讨论】:

    标签: node.js typescript webstorm amd commonjs


    【解决方案1】:

    我自己不是 WebStorm 用户,但我认为 WebStorm 指的是您的 TypeScript 项目根目录中的 tsconfig.json 文件,用于此类编译器配置。

    Here's the documentation for the tsconfig.json file.

    如果您的项目中尚不存在此文件,请在您的 TypeScript 编译目录的根目录中创建一个。在这个文件中,您可以通过module 参数告诉编译器使用哪个模块系统:

    {
        "compilerOptions": {
            "module": "commonjs"
        }
    }
    

    有关tsconfig.json 文件的更完整示例,请参见上面的链接。

    【讨论】:

    • 谢谢,很有帮助。我接受了另一个人的建议,但我投了赞成票。
    【解决方案2】:

    你必须对编译器这么说,例如在 npm 中

    选项:

    -m, --module Specify module code generation: 'commonjs' or 'amd'

    例子:

    tsc.compile(['test/cases/ship.ts', 'test/cases/fleet.ts'], '-m commonjs -t ES5 --out test/tmp/navy.js');

    更多请参考:TypeScript compiler

    也可以看看这个视频:TypeScript Modules Demystified : Internal, AMD with RequireJS, CommonJS with NodeJS

    【讨论】:

    • 谢谢。在 WebStorm 的 TypeScript 设置中,有一个地方可以编写命令行选项,所以我在那里写了“-m commonjs -t ES5”。我在设置为“-m amd -t ES5”之前看到了。
    猜你喜欢
    • 2018-04-04
    • 2021-10-27
    • 1970-01-01
    • 2023-03-18
    • 2012-10-27
    • 1970-01-01
    • 2015-08-16
    • 2017-09-18
    • 2019-03-27
    相关资源
    最近更新 更多