hn-failte's blog hn-failte's blog
首页
  • 前端文章

    • JavaScript
    • Vue
    • React
    • Webpack
    • 混合开发
  • 学习笔记

    • 《JavaScript教程》笔记
    • 《JavaScript高级程序设计》笔记
    • 《ES6 教程》笔记
    • 《Vue》笔记
    • 《React》笔记
    • 《TypeScript 从零实现 axios》
    • 《Git》学习笔记
    • TypeScript笔记
    • JS设计模式总结笔记
  • HTML&CSS
  • HTML
  • CSS
  • CSS预处理
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 算法
  • 数据库
  • 操作系统
  • 工具
  • 学习
  • 面试
  • 心情杂货
  • 前端相关
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

hn-failte

前端cv仔
首页
  • 前端文章

    • JavaScript
    • Vue
    • React
    • Webpack
    • 混合开发
  • 学习笔记

    • 《JavaScript教程》笔记
    • 《JavaScript高级程序设计》笔记
    • 《ES6 教程》笔记
    • 《Vue》笔记
    • 《React》笔记
    • 《TypeScript 从零实现 axios》
    • 《Git》学习笔记
    • TypeScript笔记
    • JS设计模式总结笔记
  • HTML&CSS
  • HTML
  • CSS
  • CSS预处理
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 算法
  • 数据库
  • 操作系统
  • 工具
  • 学习
  • 面试
  • 心情杂货
  • 前端相关
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Webpack

    • webpack 之 tapable 的讲解与使用
    • 使用Gulp4.0搭建ts学习环境
      • 必备条件
      • Gulp4的配置
        • Gulp4的变动
        • 配置
      • 使用
    • eslint从愁眉苦脸到为所欲为
  • React

  • JavaScript

  • Vue

  • 混合开发

  • 学习笔记

  • 微信小程序

  • 前端
  • Webpack
hn-failte
2019-07-20

使用Gulp4.0搭建ts学习环境

# Gulp4.0构建TypeScript学习环境

# 必备条件

大前提:node

1、gulp

2、gulp-typescript

3、nodemon

npm i gulp nodemon -g

npm i gulp gulp-typescript -D

# Gulp4的配置

# Gulp4的变动

1、task拥有两个参数,第一个参数为任务名,第二个参数为函数,函数的参数为回调函数done,执行done才会结束任务

若不执行该done函数,gulp会报一个警告,询问是否完成任务,若是在watch中,监听只会执行一次

2、任务分为并行任务、串行任务,对应series、parallel

执行串行任务tss时,会确保tsc执行后才执行hi

执行并行任务tsp时,会按照顺序同时执行,无需等待前一个任务执行完

串行与并行可以相互嵌套

# 配置

创建src文件夹,存放ts文件

创建dist文件夹,存放编译后的js文件

gulpfile.js

const gulp = require("gulp")
const ts = require("gulp-typescript")

const paths = { //配置路径
    src: "src/**/*.ts",
    output: "dist"
}

const tasks = {
    tsc: function(done){ //新增done回调函数
        gulp.src(paths.src)
        .pipe(ts({
            noImplicitAny: true
        }))
        .pipe(gulp.dest(paths.output))
        done() //执行done后,gulp才会判断此次任务完成
    },
    ts: function(){
        // gulp.watch(paths.src, tasks.tsc)) //仅有一个任务时可写成这种形式
        // gulp.watch(paths.src, gulp.series("任务一","任务二")) //并行任务的写法
        // gulp.watch(paths.src, gulp.parallel("任务一","任务二")) //串行任务的写法
        gulp.watch(paths.src, gulp.series("tsc"))
    }
}

module.exports = tasks
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

# 使用

在命令行输入nodemon <文件名[.js]>,此时,编译的ts文件一旦进行了保存操作,node会马上编译并执行

编辑 (opens new window)
#TypeScript
上次更新: 2021/08/05, 12:37:41
webpack 之 tapable 的讲解与使用
eslint从愁眉苦脸到为所欲为

← webpack 之 tapable 的讲解与使用 eslint从愁眉苦脸到为所欲为→

最近更新
01
基于 Taro 的微信小程序优化指南
02-16
02
搭建一个极简混合开发架构
08-03
03
使用State Hook
04-06
更多文章>
Theme by Vdoing | Copyright © 2017-2023 hn-failte | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式