如何使用NodeJs来监听文件变化

1.前言html

在咱们调试修改代码的时候,每修改一次代码,哪怕只是很小的修改,咱们都须要手动从新build文件,而后再运行代码,看修改的效果,这样的效率特别低,对于开发者来讲简直不能忍。node

2.构建自动编译工具git

如何使用nodeJs来监听文件变化,一旦源文件修改保存时,自动运行build过程。好比当你写CoffeeScript文件或SASS文件时,保存以后可即时生成对应的JS或CSS.github

基于Node.JS的侦听文件夹改变的模块有不少。shell

a .  fs.watch。Node.JS的文件系统也可侦听某个目录的改变npm

 

fs.watch的最大缺点就是不支持子文件夹的侦听,而且在不少状况下会侦听到两次事件(不少编辑器在保存的时侯是先把原文件清空,再进行保存,所以会触发两次文件夹改变事件)。所以须要一些开源的文件夹监听文件夹目录的改变。api

b.      Chokidarchokidar 是一个基于node.JS的监听文件夹改变模块编辑器

    步骤: 1. 运行 npm  install  chokidar --save-devgrunt

                   npm  install  [-g]   shelljs

       2. 建立一个文件helper.js工具

       3. 在helper.js文件中写入:

var chokidar = require('chokidar');

var shelljs = require('shelljs');

chokidar.watch('accordion').on('change', function(){

 'use strict';

shelljs.exec("grunt build:accordion");

shelljs.exec("node helper.js");

//shelljs.exit(1);   执行完就退出

});

在控制台输出:node helper.js就能够使用chokidar来监控咱们的test.html 文件的变化,这里是监控change变化,一旦test.html 文件有修改并保存,那么控制台就会输出语句:aaa.

shellJs是用来执行命令

c.  Watch. Watch 是另外一个监听文件夹改变的Node.JS模块

相似chokidar的用法,推荐chokidar

相关文章
相关标签/搜索