使用TypeScript

时间:2016-08-15 08:22:00

标签: visual-studio typescript ecmascript-6 ecmascript-5 ecmascript-3

TypeScript可以全局定位不同版本的Javascript - 您可以在转换ES3,ES5或ES6之间切换。

我们必须支持IE,因此ES3是我们最低的共同点。

然而,优秀的浏览器(如Chrome)已经支持ES6,并且能够通过优化运行显着更小的ES6代码。

因此,从同一个TypeScript源我想将ES3提供给IE,ES6提供给Chrome。

  • 有没有办法让TypeScript转换多个JS文件(可能是*.es3*.es6或类似的东西)所以我们可以选择要提供哪个版本? (理想情况下在VS 2015中)

  • 或者在C#中我可以访问TypeScript转换器以在运行时完成该步骤吗?

2 个答案:

答案 0 :(得分:2)

您实际上可以使用命令行(--target ES3)指定which version you want to transpile

您还可以指定输出目录,以便输出ES6和ES3转换后的代码,然后选择要动态引用的代码(使用old style IE ifs)。

答案 1 :(得分:2)

如何使用不同的tsconfig.json文件?

例如:

 - root  
    - ts-source  
    - js-es3  
       - tsconfig.json  
       - js  
    - js-es5  
       - tsconfig.json  
       - js  

然后是root/js-es3/tsconfig.json

{
    "compilerOptions": {
        "target": "ES3",
        "outDir": "js",
        "rootDir": "../ts-srouce"
    }
}

root/js-es5/tsconfig.json

{
    "compilerOptions": {
        "target": "ES5",
        "outDir": "js",
        "rootDir": "../ts-srouce"
    }
}

我不是视觉工作室用户,因此我不知道如何在那里支持不同的tsconfig.json文件,但即使你不能,也可以使用tsc编译它。 / p>