typescript-gmsoft 是一个 fis3 的插件,它提供了 typescript 的编译能力,并支持 gulp 的配置风格,让开发者能够更加便捷的使用 typescript 进行前端开发。本文将带你深入了解 typescript-gmsoft 插件的使用方法。
安装
首先,使用 npm 安装 typescript-gmsoft 插件。
npm install -g fis3-parser-typescript-gmsoft
接下来,在 fis 配置文件中引入 typescript-gmsoft 插件。以 gulp 的配置风格为例,配置文件如下:
fis .media('dev') .match('*.tsx', { parser: fis.plugin('typescript-gmsoft'), rExt: '.js' })
以上配置表示将 .tsx 后缀的文件交给 typescript-gmsoft 插件进行编译,并将输出文件的后缀改为 .js。
配置
typescript-gmsoft 插件提供了一些配置项,方便开发者进行自定义配置。以下是配置项及其说明:
emitDecoratorMetadata
类型:boolean
默认值:false
指定是否在 metadata 中包含类的装饰器声明信息。开启该项可以使用一些 Angular2 的特性。
experimentalDecorators
类型:boolean
默认值:false
指定是否启用实验性的装饰器特性。
jsx
类型:string
默认值:React
指定生成的 jsx 代码使用哪个 jsx 工具类库。
jsxFactory
类型:string
默认值:React.createElement
指定如何生成 jsx 元素。
noImplicitAny
类型:boolean
默认值:false
指定是否对 implicit any 做出警告。
strictNullChecks
类型:boolean
默认值:false
指定是否对 null 做出严格检查。
target
类型:string
默认值:es5
指定编译后的 js 代码的目标版本。
allowJs
类型:boolean
默认值:false
指定是否允许编译 js 文件。
checkJs
类型:boolean
默认值:false
是否检查 .js 文件中 type 的声明。
sourceMap
类型:boolean
默认值:true
是否生成 sourcemap 文件。
outDir
类型:string
输出目录路径。
outFile
类型:string
输出文件路径。
module
类型:string
默认值:commonjs
指定编译后的模块类型。
moduleResolution
类型:string
默认值:node
指定模块的解析策略。
lib
类型:string[]
编译过程中需要加载的类库文件。
removeComments
类型:boolean
默认值:false
是否移除注释。
示例
以下是一个简单的 typescript-gmsoft 的示例。该示例定义了一个接口 IShape 和一个类 Shape,Shape 类需要实现 IShape 接口,具体代码如下:
-- -------------------- ---- ------- --------- ------ - ------- - ----- ----- ---------- ------ - ------ -- ------- ------ -- ------- -------- ------- -
上面的代码中调用了 abstract 方法,这是 typescript 特有的语法。通过 typescript 编译后,会转化为如下代码:
var Shape = (function () { function Shape() { } return Shape; }());
可以看到,抽象类被编译成了一个空函数。这就是 typescript-gmsoft 插件的神奇之处,它可以将 typescript 代码转化为标准的 javascript 代码,方便开发者进行前端开发。
最后,祝大家使用 typescript-gmsoft 快乐愉快!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671d730d0927023822d28