$ gnpm install babel-preset-proposal-typescript
Yet another Babel preset for TypeScript, only transforms proposals which TypeScript does not support now.
So that you can use babel to transform proposals which are current in stage 0-2 and TypeScript team will not implement them temporarily.
# yarn
yarn add -D babel-preset-proposal-typescript
# npm
npm i -D babel-preset-proposal-typescript
option | description | defaults |
---|---|---|
decoratorsBeforeExport |
See Babel Document | undefined |
decoratorsLegacy |
whether to use legacy decorators semantic | true |
isTSX |
whether to enable jsx plugin with typescript |
false , but true for /\.[jt]sx$/ |
pipelineOperator |
implementation of pipeline operator, minimal , smart or fsharp |
minimal |
recordTuplePolyfill |
whether to enable import record-tuple plugin and polyfill, or specific the polyfill module name |
true for Node>=14.6, it represents @bloomberg/record-tuple-polyfill |
recordTupleSyntaxType |
record-tuple syntax, hash or bar |
hash |
Note that unlike plugins, the presets are applied in an order of last to first (https://babeljs.io/docs/en/presets/#preset-ordering), so please make sure proposal-typescript
is used at the last.
.babelrc
(Recommended).babelrc
{
"presets": ["proposal-typescript"]
}
babel input.ts --presets proposal-typescript > output.ts
require('@babel/core').transform('code', {
presets: ['proposal-typescript'],
})
Pipe codes through babel-loader
.
loader = {
test: /\.[jt]sx?$/,
loader: 'babel-loader',
options: {
presets: ['@babel/typescript', 'proposal-typescript'],
},
}
// if you prefer `ts-loader` or `awesome-typescript-loader`
loader = {
test: /\.tsx?$/,
use: [
{
loader: 'ts-loader',
},
{
loader: 'babel-loader',
options: {
presets: ['proposal-typescript'],
},
},
],
}
Detailed changes for each release are documented in CHANGELOG.md.
Copyright 2013 - present © cnpmjs.org | Home |