vue Chokidar

chokidar.watch(paths, [options])

  • 构造一个chokidar监听实例。

  • paths

    • 一个字符串或者是一个数组,描述监听的文件或者文件夹的路径
  • options
    • 对象数据类型,常用配置项:
      • persistent:bollean,与原生fs.watch一样,表示是否保护进程不退出持久监听,默认值为true
      • ignored:string,所要忽略监听的文件或者文件夹
      • ignoreInitial:bollean,表示是否对增加文件或者增加文件夹的时候进行发送事件,默认值为false表示add/addDir会触发事件
      • cwd:string类型,没有默认值,类似于appBasepath,监听的paths所相对的路径。
      • usePolling:bollean,表示是否使用前面提到的fs.watchFile()进行轮询操作,由于轮询会导致cpu飙升,所以此选项通常在需要通过网络监视文件的时候才设置为true即使用fs.watchFile(),默认值为false
      • depth:number类型,没有默认值,如果设定则表示限定了会递归监听多少个子目录。

eg:

const chokidar = require(‘chokidar‘)

chokidar.watch(‘testFolder‘, {
  persistent: true,
  ignored: /(^|[\/\\])\../,//忽略点文件
  cwd: ‘.‘,//表示当前目录
  depth:99//到位了....
}).on(‘all‘, (event, path) => {//监听除了ready, raw, and error之外所有的事件类型
  console.log(event, path);
});

 

运行该代码之后:

表明在实例化监听对象的时候,因为默认ignoreInitial: false,chokidar会发emmit add/addDir事件,而此时要是在options对象中增加了ignoreInitial: true,表明忽略监听初始化追踪的栈事件,则在实例化得时候就不会捕捉到add/addDir事件了

此外,chokidar也提供了更加多的事件层次,通过更多的options配合做到对文件的更好的监控,其中支持的事件有:

事件名称 意义
add 新增文件时触发
addDir 新增文件夹的时候触发
unlink 对应的文件的删除
unlinkDir 对应的文件夹的删除
change 文件内容改变时触发

 

https://isliulei.com/article/Node-WatchFile/

 

vue Chokidar

上一篇:Appium移动端自动化测试之测试应用实战(三)


下一篇:CentOS7更换yum源为阿里云yum源