【MMR-A】Angular Compiler 遷移至 TypeScript Transformation API
01-30
類別
必要重構/Meaningful Marvelous Refactor
置信度
Announcement
起始時間
2017-08-11
內容
早在 2017 年 2 月,TypeScript 就已經開放了 Transformation API,提供了對 Tranformation Plugin 的事實支持。
隨後 Angular 也增加了基於 Transformation API 的新 Compiler CLI 入口,不過並未啟用。
在<del>最新</del>比最新還新的 5.0.0-beta.4 版本(暫定)中,Compiler CLI 的默認入口被修改為基於 Transformation API 的新版本,同時增加了一個編譯器選項,用於配置 Compiler CLI 的入口:
{n "angularCompilerOptions": {n "disableTransformerPipeline": truen }n}n
新的 Compiler CLI 對 TypeScript 的版本要求將上升到 2.3 以上。
啟用新的 Compiler CLI 後,Angular Compiler 將<del>墮落</del>演進為 TypeScript Compiler 的 Plugin,從而減少不必要的資源消耗以及獲得更好的工具支持,同時也為之後的 watch 模式做好了準備。
目前,ts-loader 和 awesome-typescript-loader 均已支持 Transformation API:
- support custom transformers for ts 2.3 by longlho · Pull Request #535 · TypeStrong/ts-loader
- getCustomTransformers by goloveychuk · Pull Request #418 · s-panferov/awesome-typescript-loader
相關鏈接
- TypeScript 增加 Transformation API 的 PR:Expose public API for transformation. by rbuckton · Pull Request #13940 · Microsoft/TypeScript
- Angular 增加 TypeScript Transformation API 支持的 Commit:feat(compiler-cli): new compiler api and command-line using TypeScrip… · angular/angular@8054adf
- Angular 啟用 TypeScript Transformation API 支持的 Commit:refactor(compiler-cli): use the transformer based compiler by default · angular/angular@679608d
推薦閱讀:
TAG:Angular? | TypeScript |