feo*_*f84 7 typescript angular
我刚读了一篇关于官方博客angular 5的文章(https://blog.angular.io/version-5-0-0-of-angular-now-available-37e414935ced).有关于打字稿变换的讨论.详细地:
"TypeScript转换在幕后,Angular编译器现在作为TypeScript转换运行,使得增量重建速度大大加快.TypeScript转换是作为TypeScript 2.3的一部分引入的新功能,它允许我们挂钩到标准的TypeScript编译管道."
我想更好地理解它.转换或编译管道,是什么?TNX!
这是指 typescript 编译器如何生成 Javascript 代码的内部原理。从 2.3 开始,编译器采用 Typescript AST(抽象语法树)并应用一系列转换(转换管道)。在管道的末尾,您会得到一个新的 AST,它是 Javascript AST。
从源代码来看,这些是电流互感器:
因此,例如,当编译启用和模块的es5目标时,将包括以下转换:jsxsystem
TransformTypeScript - 将删除打字稿特定注释
transformJsx - 将删除jsx语法并将其转换为 Javascript
transformESNext - 将转换esnext为es2017
TransformES2017 - 将转变es2017为es2016
transformES2016 - 将转变es2016为es2015
TransformES2015 - 将转换es2015为es5(减去生成器)
TransformGenerators - 将es2015生成器转换为es5
TransformSystemModule - 将添加模块特定的 js 代码。
应用所有转换后,将 AST 写入文件是一个简单的操作。
| 归档时间: |
|
| 查看次数: |
1223 次 |
| 最近记录: |