Typescript helpers (TS <= 2.0) for compiling typescript while specifying --noEmitHelpers
within your tsconfig.json
.
Cross platform ( Node/Browser/WebWorker )
Instead you can provide --importHelpers
together with --noEmitHelpers
which will import emit helpers from Typescript "tslib"
More info: microsoft/TypeScript#9097
If you are using one of following ES2015/ES.next features with Typescript:
- inheritance via
class Foo extends Moo{}
async/await
- decorators via
experimentalDecorators
- metadata reflection via
emitDecoratorMetadata
Typescript will generate helper code in every one file. This can be a problem when dealing with code coverage or payload size of you library/app
To mitigate this problem Typescript starting from version 1.8 allow us to specify noEmitHelpers: true
which wont generate these helpers.
And that's where this little utility comes into play, it defines those helpers just once for whole app.
npm install --save-dev ts-helpers
then load it from your app root file:
// main.ts
import 'ts-helpers';
and set tsconfig noEmitHelpers
like following example:
{
"compilerOptions": {
"module": "commonjs",
"target": "es5",
"noImplicitAny": false,
"sourceMap": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"moduleResolution": "node",
"pretty": true,
"noEmitHelpers": true
},
"exclude": [
"node_modules"
]
}
That's it! enjoy ;)