6

查看 VS Code 设置,似乎没有针对每个项目的选项来设置 Typescript 编译器。我可以将 VS Code 设置为使用通过 NPM 安装的 1.5 alpha 编译器吗?在 tsconfig 文件中引用这个编译器会起作用吗?

编辑:只是想补充一点,我想编译到 ES6,如果这有区别的话。

4

3 回答 3

4

我现在已经验证了这一点 - 您可以编辑您的 tasks.json 文件以指向您喜欢的任何版本。下面的示例指向 1.5 测试版,但您可以指向 1.4……或者如果您想要果味,我想甚至可以指向 0.8。

{
    "version": "0.1.0",

    // The command is tsc.
    "command": "C:\\Program Files (x86)\\Microsoft SDKs\\TypeScript\\1.5\\tsc",

    // Show the output window only if unrecognized errors occur. 
    "showOutput": "silent",

    // Under windows use tsc.exe. This ensures we don't need a shell.
    "windows": {
        "command": "C:\\Program Files (x86)\\Microsoft SDKs\\TypeScript\\1.5\\tsc.exe"
    },

    // args is the HelloWorld program to compile.
    "args": ["app.ts"],

    // use the standard tsc problem matcher to find compile problems
    // in the output.
    "problemMatcher": "$tsc"
}
于 2015-04-30T19:28:06.063 回答
3

好吧,感谢上面的史蒂夫和巴萨拉特,我确实偶然发现了答案,所以这是我采取的步骤。这是编辑 tasks.json 和 tsconfig.json 文件的组合。现在我使用的是 TS 1.5 alpha,它编译为 ES6 代码。

  1. 打开 tasks.json 文件。您可以使用CTRL++并键入“配置任务运行器”SHIFT来执行此操作。P如果“./settings/”文件夹中尚不存在 tasks.json 文件,这将为您创建一个文件。史蒂夫对另一个问题的回答指出了这一点。

  2. 保留第一个未注释的任务。我们将以这种方式修改该任务:

2a. 对于“命令”,该值设置为 npm 安装的 TS 1.5 alpha(这是 TS 的本地安装 - 不是带有-g选项的全局安装):

"C:\\path\\to\\node_modules\\.bin\\tsc.cmd"

我在 Windows 上,所以一定要使用“tsc.cmd”,而不仅仅是“tsc”。

2b。注释掉整个“windows”属性。

2c。注释掉“args”属性。如果您在此处输入文件名 或${file},编译器将tsconfig.json完全忽略您的文件。

这就是这个文件。

  1. 在 TS 项目的根目录中创建一个 tsconfig.json 文件。

3a。在我的情况下,我完全删除(不仅仅是注释掉)“文件”属性,因为我希望项目中的所有 TS 文件都能编译。

3b。在编译器选项中,将“target”更改为“ES6”并完全删除了“module”选项(将其注释掉给了我一个错误)。ES6 不需要“模块”。

该文件的主要部分现在如下所示:

"version": "1.5.0-alpha",
"compilerOptions": {
    "target": "ES6",
    "declaration": false,
    "noImplicitAny": false,
    "removeComments": false,
    "noLib": false
},

"filesGlob": [
    "./**/*.ts",
    "!./node_modules/**/*.ts"
],

// optional format code options omitted...

现在,当我对 TS 文件进行更改时,按ctrl++运行编译器,输出为 ES6 javascript shiftb

非常感谢史蒂夫和巴萨拉特。当史蒂夫把我推得更远时,我给了他答案。

于 2015-05-01T14:42:37.427 回答
0

我将 VS Code 设置为使用我通过 NPM 安装的 1.5 alpha 编译器

您可以使用它来构建,但不能将其用作语言服务。

注意:VS Code 附带 TypeScript 1.5 beta,它比 1.5 alpha 更新,所以你可能不希望它使用 alpha :)

于 2015-04-30T23:58:36.040 回答