美文网首页
grunt watch详解

grunt watch详解

作者: MC丶逗逼嘿 | 来源:发表于2018-11-01 11:55 被阅读0次

当文件被添加、更改或删除时,运行预定义的任务

安装插件

npm install grunt-contrib-watch --save-dev

安装完插件后,可以在Gruntfile中用这行代码启用插件

grunt.loadNpmTasks('grunt-contrib-watch')

可以使用grunt watch命令启动这个任务

配置:

files:(type:String|Array)定义了这个任务将要监视的文件,可以为一个路径字符串或者一个字符串的数组.

tasks:(type:String|Array)这定义了当监视的文件事件发生时要运行的任务

options.spawn:(type:Boolean)默认会创建一个新的子进程来执行触发的任务。通过设置为 false,可以使得触发的任务可以共享进程上下文,并且提高速度。但是,这会导致监控任务容易崩溃,所以,请尽量使用这个特性,在新的子进程中执行任务

options.interrupt:(type:Boolean)在文件发生修改的时候,会生成子进程来执行任务,默认的行为是对于每个目标来说,在上一个处理完成之后,仅仅生成一个新的子进程来执行任务。设置 interrupt 为 true,将会导致中止上一个进程,生成一个新进程来处理最后的变更

options.debounceDelay:(type:Integer)如果同样的文件或者路径被修改,需要等待多长时间才触发事件。默认 500 毫秒

options.event:(type:String|Array)指定监控目标的特定事件类型,可以为 'all', 'changed', 'added' 和 'deleted'

options.reload:(type:Boolean)默认情况下,如果 Gruntfile.js 文件被监控,在这个文件被修改之后,会导致监控任务重新启动。并且重新加载 Gruntfile.js。如果 reload 设置为 true,任何被监控文件的修改都会导致监控任务重新启动。除非你的 Gruntfile.js 依赖于其它文件,否则不使用这个参数

options.forever:(type:Boolean)这是整个任务级别的参数,不能在单个目标上配置。默认情况下,监控任务会处理 grunt.fatal 和 grunt.warn ,防止导致的退出监控问题。如果你不希望监控任务覆盖 grunt.fatal 和 grunt.warn ,可以将 forever 设置为 false

options.dateFormat:(type:Function)这是一个任务级别的参数,不能在单个目标上配置。默认情况下,当watch完成任务时,它将显示消息Completed in 1.301s at Thu Jul 18 2013 14:58:21 GMT-0700 (PDT) - Waiting...您可以通过提供自己的函数来覆盖此消息

options.atBegin:(type:Boolean)此选项将在监视器启动时触发每个指定任务的运行

options.livereload:(type:Boolean|Number|Object)设置为true或设置为端口号以启动实时加载,默认和推荐的端口号是35729

如果启用了一个实时重新加载服务器,则将启动每个目标的watch任务。然后在指定的任务运行后,将通过修改的文件触发实时重新加载服务器

options.cwd:(type:String|Object)能够设置当前工作目录。默认为process.cwd()。可以是一个字符串,以设置cwd来匹配文件和生成任务或一个对象来独立设置

options.livereloadOnError:(type:Boolean)如果执行的任务遇到错误,则可以防止实时重新启动。如果设置为false,则只有当所有任务成功完成时,才会触发活动载入。

相关文章

网友评论

      本文标题:grunt watch详解

      本文链接:https://www.haomeiwen.com/subject/vvntxqtx.html