介绍
dot-task
是一个基于 Node.js
的命令行工具,可以用于快速构建前端项目的开发环境。它的主要功能是将项目中的多个任务进行自动化,例如编译脚本、压缩文件、代码检查等。使用 dot-task
可以帮助开发者节省时间和精力,同时提高项目开发的效率。
安装
dot-task
包可以通过 npm
安装,执行以下命令即可:
npm install dot-task -g
配置
在项目根目录下新建 dotfile.js
,作为配置文件。配置文件由多个任务组成,每个任务都可以包含多个步骤。
配置文件的格式如下:
-- -------------------- ---- ------- -------------- - - ------ - ------ - -- ------ ------ - -- -------- -- -------- -- --- - -- ------ - -- ------ ------ - -- -------- -- -------- -- --- - -- -- --- - --
其中,tasks
是一个对象,每个任务是一个对象,包含两个属性:
steps
:步骤数组,由多个步骤组成。每个步骤是一个对象。
步骤对象的格式如下:
{ action: '', // 动作名称,比如 'copy'、'uglify' 等 inputs: [], // 输入文件,可以是文件列表或者是通配符模式 outputs: '', // 输出文件,可以是目录或者是文件路径 options: {} // 配置项,依赖于具体的动作 }
动作列表
dot-task
支持多种动作,下面是其中的一些常用的动作:
clean
用于清理目录或文件。该动作不需要输入文件。
{ action: 'clean', outputs: 'dist' // 清理目录 dist }
copy
用于复制文件或目录。
{ action: 'copy', inputs: 'src/*.html', // 复制 src 目录下的所有 HTML 文件 outputs: 'dist' // 复制到 dist 目录下 }
less、sass、stylus
用于编译 less
、sass
、stylus
文件。
-- -------------------- ---- ------- - ------- ------- ------- ------------------- -- -- --- ------ ---- -- -------- ------------- -- --- ---------- --- -------- - ---------- ----- -- ---- --------- --------- ---- -- ---- - -
babel
用于编译 ES6 代码至 ES5。
{ action: 'babel', inputs: 'src/js/*.js', // 编译 src 目录下所有 js 文件 outputs: 'dist/js', // 输出到 dist/js 目录下 options: { presets: ['@babel/preset-env'] // 使用 preset-env 编译 } }
browserify
用于打包 CommonJS 模块。
{ action: 'browserify', inputs: 'src/js/index.js', // 打包 src/js/index.js 文件 outputs: 'dist/js/index.js' // 输出到 dist/js/index.js 文件 }
webpack
用于打包 JavaScript 文件。
{ action: 'webpack', inputs: 'src/js/index.js', // 打包 src/js/index.ejs 文件 outputs: 'dist/js/index.js' // 输出到 dist/js/index.js 文件 }
uglify
用于压缩 JavaScript 文件。
{ action: 'uglify', inputs: 'dist/js/*.js', // 压缩 dist/js 目录下的 js 文件 outputs: 'dist/js', // 输出到 dist/js 目录下 options: { compress: true // 是否压缩 } }
使用
执行以下命令来运行任务:
dot-task [taskName]
其中,taskName
是任务的名称,如果不指定,则默认执行第一个任务。
例如,如果要执行名为 build
的任务,则执行以下命令:
dot-task build
运行 dot-task
时,它会读取配置文件中指定的任务并依次执行每个任务中的步骤。任务的顺序由配置文件中的顺序决定。
示例
以下是一个简单的配置文件示例,它包含三个任务:clean
、build
和 watch
.
-- -------------------- ---- ------- ----- ---- - ---------------- -------------- - - ------ - ------ - -- -- ---- -- ------ -- ------- -------- -------- ------ -- -- ------ - -- -- ---- - -- ------ -- ------- ------- ------- ------------------- -------- ------------- -------- - ---------- ----- --------- ---- - -- - ------- ------------- ------- ------------------ -------- ------------------ -- -- ------ - -- ------ ------ -- ------- -------- ------- -------------------- --------------- ------ --------- -------- -- - - --
执行以下命令来运行配置文件:
dot-task clean dot-task build dot-task watch
该配置文件会先清理和编译生成 dist
目录下的文件,然后监听文件变化,实时编译和清理 dist 目录。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066b5a51ab1864dac66f40