如何使用打字稿文件运行 gulp

2023-11-24

有一个使用 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 支持的更简单方法是:

  1. Install ts-node, typescript, and @类型/吞咽:

    $ npm i -D ts-node typescript @types/gulp
    
  2. 如果你有一个tsconfig.json文件集ts-node.compilerOptions.module to "commonjs"

    {
        // these options are overrides used only by ts-node 
        "ts-node": {
            "compilerOptions": {
                "module": "commonjs" 
            }
        }
    }
    

    (你不需要tsconfig.json文件,这仅适用于您的项目中已有的情况)

  3. Create gulpfile.ts使用以下演示代码:

    import gulp from 'gulp'; // or import * as gulp from 'gulp'
    gulp.task('default', () => console.log('default'));
    

    (或重命名您现有的Gulpfile.js to gulpfile.ts)

  4. 开始构建:

    $ 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(使用前将#替换为@)

如何使用打字稿文件运行 gulp 的相关文章

随机推荐

  • Objective-C 中自定义对象的分组

    我有 Person 类的自定义对象数组 Person NSObject NSString firstName NSString lastName NSString age NSMutableArray personsArray NSMuta
  • #在C中定义一个元组

    我希望能够定义一个元组来表示其他宏所需的参数 我认为展示我想要的最好方法是展示一个例子 include
  • 如何将 InMemoryUploadedFile 对象复制到磁盘

    我试图捕获通过表单发送的文件 并在保存之前对其执行一些操作 所以我需要在临时目录中创建该文件的副本 但我不知道如何访问它 Shutil 的函数无法复制该文件 因为没有该文件的路径 那么有没有办法以其他方式执行此操作 我的代码 image f
  • 在 Android 上使用客户端/服务器证书进行双向身份验证 SSL 套接字

    我正在开发一个需要客户端和服务器证书身份验证的 Android 应用程序 我创建了一个 SSLClient 类 该类在常规桌面 Java SE 6 上运行良好 我已将其移至我的 Android 项目中 但收到以下错误 未找到 KeyStor
  • 在 R 包中将非 S3 基本函数重新定义为 S3 函数是一种不好的风格吗?

    所以我正在开发一个使用 S3 类的 R 包 如果我可以使用sample作为我的一门课的方法 然而 base已经声明了sample作为一个非S3功能 所以我想知道的是 重新定义非S3是不是不好的风格base函数如sample作为 S3 功能
  • CSS 过渡与可见性不起作用

    在下面的小提琴中 我分别对可见性和不透明度进行了转换 后者有效 但前者无效 此外 在可见性的情况下 过渡时间被解释为悬停时的延迟 在 Chrome 和 Firefox 中都会发生 这是一个错误吗 http jsfiddle net 0r21
  • 从c++程序调用python进行分发

    我想从我的 C 程序中调用 python 脚本文件 我不确定我将分发给的人是否安装了 python 我想从我的 C 程序中调用 python 脚本文件 这意味着您希望将 Python 嵌入到您的 C 应用程序中 正如中提到的将 Python
  • Jersey:JSON 对象列表

    我试图在我的 Jersey 实现资源类中检索对象的后集合 如下所示 POST Path send Consumes MediaType APPLICATION JSON Produces MediaType APPLICATION JSON
  • GSON 和 InstanceCreator 问题

    我有以下 POJO public interface Shape public double calcArea public double calcPerimeter public class Rectangle implement Sha
  • 发送带有个人资料图片的电子邮件 PHP 邮件功能

    当用户收到从我的网站使用 PHP 发送的电子邮件时 我想在用户收件箱中显示个人资料图片 在这张图片中 第一封电子邮件来自我的网站 第二封电子邮件是我想要的 这是我的 PHP 邮件函数 emailTo POST emialNewPass em
  • 如何在 Python 中按字母数字顺序获取下一个字符串?

    我需要一个简单的程序 给定一个字符串 按字母数字顺序 或仅按字母顺序 返回下一个字符串 f aaa aab f aaZ aba 等等 其中一个模块中是否已经有此功能 我认为没有内置函数可以做到这一点 以下应该有效 def next stri
  • 如何使用属性 server.port=0 运行 spock 测试时查找 Spring Boot 容器的端口

    鉴于此条目application properties server port 0 这会导致 Spring Boot 选择一个随机可用端口 并使用 spock 测试 Spring Boot Web 应用程序 spock 代码如何知道要访问哪
  • 如何从 android 调用 .NET Web 服务? [关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 我需要使用如下 URL 调用 Web 服务 http 192 168 1 19 Test
  • 将 Spring Cloud Gateway 与 oauth2 一起使用

    我在使用 Spring Cloud Gateway 时遇到问题 是否有任何依赖项直接或递归调用 spring boot starter tomcat 它不会工作 因为它将启动嵌入式 tomcat 服务器而不是 Spring Cloud Ga
  • 如何在 Swift 中按属性值对自定义对象数组进行排序

    假设我们有一个名为的自定义类imageFile这个类包含两个属性 class imageFile var fileName String var fileID Int 其中很多都存储在数组中 var images Array var aIm
  • 如何使用 LWP::UserAgent 接受自签名证书

    我正在尝试设置一个使用 HTTPS 的 node js 服务器 然后 我将用 Perl 编写一个脚本 向服务器发出 HTTPS 请求并测量往返延迟 这是我的node js var express require express var ht
  • 将 HttpPostedFileBase 转换为 byte[]

    在我的 MVC 应用程序中 我使用以下代码来上传文件 MODEL public HttpPostedFileBase File get set VIEW Html TextBoxFor m gt m File new type file 一
  • 如何在 Gnome Shell 中设置应用程序标题?

    我是 Gtk 开发的新手 正在尝试使用 PyGObject 和 Gtk 3 0 编写一个应用程序 然而 当我从命令行在 Gnome Shell 中运行应用程序时 出现在左上角 紧邻 活动 热角右侧 的应用程序名称仅设置为 Python 源文
  • 在 Google 地图上制作可点击的多边形(适用于 Android)

    我有一个城市各个区域的连续纬度 有什么方法可以用它创建可点击的多边形吗 一次可行的方法是 使用可用的 LatLngs 生成多边形 我想用颜色编码在地图上直观地显示多边形 Set up setOnMapClickListener 做多边形内的
  • 如何使用打字稿文件运行 gulp

    有一个使用 gulp js 文件的 gulp 项目 但我的项目是用 typescript 编写的 所以我宁愿有一个用 typescript 编写的 gulp 文件 可以将这个过程分为两个步骤 其中我 1 手动将typescript gulp