Nodewatch 是一款基于 Node.js 的文件监控工具,它可以监听指定目录下的文件变化,并在文件发生改变时执行相应操作。在前端开发中,我们通常会使用 Nodewatch 来自动编译 Less、Sass 或 TypeScript 等文件。
安装
你需要在全局安装 Nodewatch:
npm install -g nodewatch
使用
基本用法
在项目的根目录下创建 nodewatch.json
文件,配置要监听的文件以及执行的命令:
{ "watch": ["src"], "exts": ["ts"], "runOnChange": { "cmd": "tsc", "args": ["--project", "."] } }
在上述配置中,watch
字段表示要监听的目录或文件,这里我们只监听了 src
目录;exts
字段表示要监听的文件扩展名,这里我们只监听了 .ts
文件;runOnChange
字段表示文件发生变化时要执行的命令,这里我们使用 TypeScript 编译器 tsc
来编译 TypeScript 文件。
运行 Nodewatch:
nodewatch
现在,当 src
目录下的 .ts
文件发生变化时,Nodewatch 就会自动执行 tsc
命令进行编译。
高级用法
自定义命令
除了使用预定义的命令,你还可以自定义要执行的命令:
{ "watch": ["src"], "exts": ["ts"], "runOnChange": { "cmd": "npm", "args": ["run", "build"] } }
在上述配置中,我们将要执行的命令设置为 npm run build
。
执行多个命令
有时候,我们需要在文件发生变化时依次执行多个命令。这时,我们可以使用数组来配置要执行的命令:
-- -------------------- ---- ------- - -------- -------- ------- --------- -------------- - - ------ ------- ------- ----------- ------------- ---------------- ---------------- -- - ------ ---------- ------- ------ -------------------- ----- ---------------- ---------------- - - -展开代码
在上述配置中,我们设置了两个要执行的命令,分别是编译 Sass 文件和使用 PostCSS 处理 CSS 文件。
运行前清理目录
在执行命令之前,有时候我们需要清理一些旧文件。你可以在配置文件中添加一个 clean
字段来指定要清理的目录或文件:
-- -------------------- ---- ------- - -------- -------- ------- --------- -------- --------- -------------- - ------ ------- ------- ----------- ------------- ---------------- ---------------- - -展开代码
在上述配置中,我们设置了一个要清理的目录 dist
,表示要删除该目录下的所有文件。
总结
本文介绍了 Nodewatch 的基本用法和一些高级用法,希望能对你在前端开发中使用 Nodewatch 有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/42046