繁体   English   中英

指向Express Server的Grunt Watch Task Livereload选项导致“ watch.livereload.files”丢失

[英]Grunt Watch Task Livereload Option to Point to Express Server Causes “watch.livereload.files” missing

我正在手工构建一个Gruntfile.js文件以获取学习经验。 按照我的逻辑,如果静态html / css / js文件之一发生更改,我希望Express Server重新加载。 因此,在监视任务中,我有一个livereload选项,可以通过使用livereload: '<%= express %>'将它指向快递服务器任务来重新装载快递livereload: '<%= express %>' 但是,它没有按计划进行,我得到了:

Running "watch" task
Waiting...
Verifying property watch.livereload.files exists in config...ERROR
>> Unable to process task.
Warning: Required config property "watch.livereload.files" missing.

我得到这个消息的争论不断,直到咕gr声最终消失为止。 是什么原因引起的,以及如何将其更改为其中一个静态文件发生更改时会反弹的位置? 我宁愿将Express任务放在watch任务之外,而只是在watch task中引用它,以使其看起来更整洁。

Gruntfile.js:

module.exports = function(grunt) {
    require('load-grunt-tasks')(grunt);
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),

        express: {
            options: {
                port: 9000,
                script: 'app.js'
                }
            },

        watch: {
            options: {
                livereload: true
            },

            servedFiles: {
                files: '<%= pkg.name %>/static/**',
                options: {
                  livereload: true
                }
            },

            livereload: {
                options: {
                  livereload: '<%= express %>'
                  }
            }
        }
    });
    grunt.registerTask('default', 'start server', function(target) {
        grunt.task.run('watch');
        console.log("ssss");
        grunt.task.run('express');
    });
}

我在livereload下的选项中包含了一个文件属性和文件列表,该错误修复了该错误。 话虽这么说,但这不会使表达反弹,最好的方法只是作为任务的标准方法(请确保使用spawn:false)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM