Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gruntjs 咕噜手表不';grunt服务器任务期间无法工作_Gruntjs_Livereload_Grunt Contrib Watch - Fatal编程技术网

Gruntjs 咕噜手表不';grunt服务器任务期间无法工作

Gruntjs 咕噜手表不';grunt服务器任务期间无法工作,gruntjs,livereload,grunt-contrib-watch,Gruntjs,Livereload,Grunt Contrib Watch,我将Grunt与执行监视任务的Grunt服务器任务一起使用。不幸的是,在保存一个less或coffee文件后,应该由watch taks触发的“默认”任务不会被触发,因此浏览器不会加载 我在寻找问题,但没有找到合适的解决办法 这是我的Grunfile.coffee的摘录: grunt.registerTask "server", [ 'less' 'coffee' 'copy' "concurrent:server" "connect:livereload

我将Grunt与执行监视任务的Grunt服务器任务一起使用。不幸的是,在保存一个less或coffee文件后,应该由watch taks触发的“默认”任务不会被触发,因此浏览器不会加载

我在寻找问题,但没有找到合适的解决办法

这是我的Grunfile.coffee的摘录:

grunt.registerTask "server", [
    'less'
    'coffee'
    'copy'
    "concurrent:server"
    "connect:livereload"
    "open"
    "watch"
]

grunt.registerTask "default", [
    'less'
    'coffee'
    'copy'
]

watch:
    coffee:
        files: [
            '<%= assets %>/scripts/{,*/}*.coffee'
            'Gruntfile.coffee'
            '<%= assets %>/scripts/*.coffee'
        ]

    less:
        files: [
            '<%= assets %>/styles/**/**/*.less'
            '<%= assets %>/styles/**/*.less'
            '<%= assets %>/styles/*.less'
            ]

    files: [
        'app/**/*.php'
        'app/**/*.html'
    ]

    tasks: 'default'

    livereload:
        options:
            livereload: LIVERELOAD_PORT # is 37562

        files: [
            "<%= assets %>/{,*/}*.html"
            '<%= assets %>/styles/**/*.less'
            '<%= assets %>/scripts/*.coffee'
            '<%= assets %>/styles/**/*.less'
            '<%= assets %>/styles/*.less'
        ]
grunt.registerTask“服务器”[
“更少”
“咖啡”
“复制”
“并发:服务器”
“连接:livereload”
“打开”
“手表”
]
grunt.registerTask“默认值”[
“更少”
“咖啡”
“复制”
]
观察:
咖啡:
档案:[
“/scripts/{,*/}*.coffee”
“Gruntile.咖啡”
“/scripts/*.coffee”
]
减:
档案:[
“/styles/***/***/.less”
“/styles/***/.less”
“/styles/*.less”
]
档案:[
“app/***.php”
“app/***.html”
]
任务:“默认”
利弗雷罗德:
选项:
利弗雷洛德:利弗雷洛德港是37562
档案:[
/{,*/}*.html
“/styles/***/.less”
“/scripts/*.coffee”
“/styles/***/.less”
“/styles/*.less”
]

提前感谢您的帮助!:)

为什么不为每个关注的文件组定义单独的任务

watch:
  coffee:
    files: [
      'Gruntfile.coffee'
      '<%= assets %>/scripts/*.coffee'
    ]
    tasks: 'coffee'

  less:
    files: [
      '<%= assets %>/styles/**/**/*.less'
      '<%= assets %>/styles/**/*.less'
      '<%= assets %>/styles/*.less'
    ]
    tasks: 'less
观察:
咖啡:
档案:[
“Gruntile.咖啡”
“/scripts/*.coffee”
]
任务:“咖啡”
减:
档案:[
“/styles/***/***/.less”
“/styles/***/.less”
“/styles/*.less”
]
任务:“更少

这将在保存
.coffee
文件时编译您的CoffeeScript,并在保存
.less
文件时编译您的less。当
咖啡
文件更改时,重新编译所有
更少的
文件是没有意义的,反之亦然。

为什么不为每个关注的文件组定义单独的任务

watch:
  coffee:
    files: [
      'Gruntfile.coffee'
      '<%= assets %>/scripts/*.coffee'
    ]
    tasks: 'coffee'

  less:
    files: [
      '<%= assets %>/styles/**/**/*.less'
      '<%= assets %>/styles/**/*.less'
      '<%= assets %>/styles/*.less'
    ]
    tasks: 'less
观察:
咖啡:
档案:[
“Gruntile.咖啡”
“/scripts/*.coffee”
]
任务:“咖啡”
减:
档案:[
“/styles/***/***/.less”
“/styles/***/.less”
“/styles/*.less”
]
任务:“更少

这将在保存
.coffee
文件时编译您的CoffeeScript,并在保存
.less
文件时编译您的less。当
coffee
文件发生更改时,重新编译所有
less
文件是没有意义的,反之亦然。

您正在监视的任务配置不正确。它需要
文件块
来监视和
任务块
来运行。您的
coffee
less
目标都配置为监视文件,但不运行任务。然后你有一个不在任何目标内的块

仔细查看观察任务中的示例:

以下是一个(半)固定配置:

watch:
  coffee:
    files: [
      '<%= assets %>/scripts/{,*/}*.coffee'
      'Gruntfile.coffee'
      '<%= assets %>/scripts/*.coffee'
    ]
    tasks: ['coffee']

  less:
    files: [
      '<%= assets %>/styles/**/**/*.less'
      '<%= assets %>/styles/**/*.less'
      '<%= assets %>/styles/*.less'
    ]
    tasks: ['less']

   TARGETNAMENEEDEDHERE:
     files: [
       'app/**/*.php'
       'app/**/*.html'
     ]
     tasks: 'default'

   ###
   The files in this target are not configured correctly.
   Typically people create a livereload target to watch destination files.
   So the livereload will only trigger when one of the above targets writes
   to a destination file. But you're watching source files below.
   ###
   livereload:
      options:
        livereload: LIVERELOAD_PORT # is 37562
      files: [
        "<%= assets %>/{,*/}*.html"
        '<%= assets %>/styles/**/*.less'
        '<%= assets %>/scripts/*.coffee'
        '<%= assets %>/styles/**/*.less'
        '<%= assets %>/styles/*.less'
      ]
观察:
咖啡:
档案:[
“/scripts/{,*/}*.coffee”
“Gruntile.咖啡”
“/scripts/*.coffee”
]
任务:[“咖啡”]
减:
档案:[
“/styles/***/***/.less”
“/styles/***/.less”
“/styles/*.less”
]
任务:[“更少”]
targetNameneeded此处:
档案:[
“app/***.php”
“app/***.html”
]
任务:“默认”
###
此目标中的文件配置不正确。
通常,人们创建livereload目标以查看目标文件。
因此,livereload将仅在上述目标之一写入时触发
到目标文件。但您正在观看下面的源文件。
###
利弗雷罗德:
选项:
利弗雷洛德:利弗雷洛德港是37562
档案:[
/{,*/}*.html
“/styles/***/.less”
“/scripts/*.coffee”
“/styles/***/.less”
“/styles/*.less”
]

您正在监视的任务配置不正确。它需要
文件块
来监视和
任务块
来运行。您的
coffee
less
目标都配置为监视文件,但不运行任务。然后你有一个不在任何目标内的块

仔细查看观察任务中的示例:

以下是一个(半)固定配置:

watch:
  coffee:
    files: [
      '<%= assets %>/scripts/{,*/}*.coffee'
      'Gruntfile.coffee'
      '<%= assets %>/scripts/*.coffee'
    ]
    tasks: ['coffee']

  less:
    files: [
      '<%= assets %>/styles/**/**/*.less'
      '<%= assets %>/styles/**/*.less'
      '<%= assets %>/styles/*.less'
    ]
    tasks: ['less']

   TARGETNAMENEEDEDHERE:
     files: [
       'app/**/*.php'
       'app/**/*.html'
     ]
     tasks: 'default'

   ###
   The files in this target are not configured correctly.
   Typically people create a livereload target to watch destination files.
   So the livereload will only trigger when one of the above targets writes
   to a destination file. But you're watching source files below.
   ###
   livereload:
      options:
        livereload: LIVERELOAD_PORT # is 37562
      files: [
        "<%= assets %>/{,*/}*.html"
        '<%= assets %>/styles/**/*.less'
        '<%= assets %>/scripts/*.coffee'
        '<%= assets %>/styles/**/*.less'
        '<%= assets %>/styles/*.less'
      ]
观察:
咖啡:
档案:[
“/scripts/{,*/}*.coffee”
“Gruntile.咖啡”
“/scripts/*.coffee”
]
任务:[“咖啡”]
减:
档案:[
“/styles/***/***/.less”
“/styles/***/.less”
“/styles/*.less”
]
任务:[“更少”]
targetNameneeded此处:
档案:[
“app/***.php”
“app/***.html”
]
任务:“默认”
###
此目标中的文件配置不正确。
通常,人们创建livereload目标以查看目标文件。
因此,livereload将仅在上述目标之一写入时触发
到目标文件。但您正在观看下面的源文件。
###
利弗雷罗德:
选项:
利弗雷洛德:利弗雷洛德港是37562
档案:[
/{,*/}*.html
“/styles/***/.less”
“/scripts/*.coffee”
“/styles/***/.less”
“/styles/*.less”
]