How do I transpile TypeScript to ES6?

前端 未结 4 638
甜味超标
甜味超标 2020-12-29 03:27

Basically I need to be able to write TypeScript code in my IDE (this introduces great ease to development), compile it to ES6 and then apply babel.js (as all br

相关标签:
4条回答
  • 2020-12-29 03:41

    TypeScript is more or less ES6 with very little syntactic sugar. I would suggest you write Vanilla ES6 instead of TypeScript but on the other hand TypeScript tooling is worth putting in the extra effort to write TypeScript and transpile it into ES6 and let Babel do the rest.

    Here is a more convenient option like noted in a comment, from TypeScript 1.5 you have the ability to transpile to ES6.

    0 讨论(0)
  • 2020-12-29 03:51

    You can use typescript to write pure ES6 and then transpile to ES3 or ES5. Since typescript is ES6 plus goodies.

    See it as using Less to write your css, you can write pure CSS in a less file and it will compile just fine.

    For typescript 1.8 language spec:

    TypeScript is a syntactic sugar for JavaScript. TypeScript syntax is a superset of ECMAScript 2015 (ES2015) syntax. Every JavaScript program is also a TypeScript program.

    TypeScript syntax includes all features of ECMAScript 2015, including classes and modules, and provides the ability to translate these features into ECMAScript 3 or 5 compliant code.

    0 讨论(0)
  • 2020-12-29 03:54

    Yes.

    You can target TypeScript compiler to ES6.

    For example add this to your command line args:

    --target es6
    
    0 讨论(0)
  • 2020-12-29 03:55

    Yes, You can.

    Either by adding --target es2015, or by adding target to Your tsconfig.json:

    {
      "compilerOptions": {
        "target": "es2015"
      }
    }
    

    Supported options for target are:

    • "ES3" (default)
    • "ES5"
    • "ES6"/"ES2015"
    • "ES2016"
    • "ES2017"
    • "ESNext"

    There are a lot of more config options. You can explore them here: Compiler options

    Some options are only allowed in tsconfig.json, and not through command-line switches.

    0 讨论(0)
提交回复
热议问题