有一个使用 gulp.js 文件的 gulp 项目,但我的项目是用 typescript 编写的,所以我宁愿有一个用 typescript 编写的 gulp 文件。可以将这个过程分为两个步骤,其中我:
1.手动将typescript gulp文件转译为js,然后
2. 打电话gulp <some-task-name>
但这似乎并不理想。有没有更好的办法
这?
From Gulp 用于转译的文档:
转译
您可以使用需要转译的语言(例如 TypeScript 或 Babel)编写 gulpfile,方法是更改您的扩展名gulpfile.js
指示语言并安装匹配的转译器模块。
- 对于 TypeScript,重命名为
gulpfile.ts
并安装ts-node module.
- 对于 Babel,重命名为
gulpfile.babel.js
并安装@babel/注册 module.
因此,在 Gulp 中添加 TypeScript 支持的更简单方法是:
-
Install ts-node, typescript, and @类型/吞咽:
$ npm i -D ts-node typescript @types/gulp
-
如果你有一个tsconfig.json
文件集ts-node.compilerOptions.module
to "commonjs"
{
// these options are overrides used only by ts-node
"ts-node": {
"compilerOptions": {
"module": "commonjs"
}
}
}
(你不需要tsconfig.json
文件,这仅适用于您的项目中已有的情况)
-
Create gulpfile.ts
使用以下演示代码:
import gulp from 'gulp'; // or import * as gulp from 'gulp'
gulp.task('default', () => console.log('default'));
(或重命名您现有的Gulpfile.js
to gulpfile.ts
)
-
开始构建:
$ npx gulp
输出应类似于以下内容:
$ gulp
[21:55:03] Requiring external module ts-node/register
[21:55:03] Using gulpfile ~/src/tmp/typescript-tmp/gulpfile.ts
[21:55:03] Starting 'default'...
default
[21:55:03] Finished 'default' after 122 μs
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)