Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.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
Javascript 有咕噜声的利弗雷罗德?_Javascript_Gruntjs_Livereload_Grunt Contrib Watch - Fatal编程技术网

Javascript 有咕噜声的利弗雷罗德?

Javascript 有咕噜声的利弗雷罗德?,javascript,gruntjs,livereload,grunt-contrib-watch,Javascript,Gruntjs,Livereload,Grunt Contrib Watch,除此之外,我还将咨询作为起点 我的手表任务如下所示: watch: { less: { files: ['less/**/*.less'], tasks: ['less'], options: { livereload: true } }, handlebars: { files: ['templates/**/*.hbs'], tasks: ['handlebars'], options: { live

除此之外,我还将咨询作为起点

我的手表任务如下所示:

watch: {
  less: {
    files: ['less/**/*.less'],
    tasks: ['less'],
    options: {
      livereload: true
    }
  },
  handlebars: {
    files: ['templates/**/*.hbs'],
    tasks: ['handlebars'],
    options: {
      livereload: true
    }
  }
}
首先我尝试使用浏览器扩展,然后我在index.html中添加了这个脚本(并验证它是否已加载)

<script src="//localhost:35729/livereload.js"></script>
我还有一个连接任务,我试着运行grunt,不管有没有,都没有用

connect: {
  dev: {
    options: {
      port: 35729
    }
  }
}
仍然没有实时重新加载…

这能工作吗

watch: {
  options: { livereload: true },
  less: {
    files: ['less/**/*.less'],
    tasks: ['less']
  },
  //...
}

另外,请尝试在详细模式下运行(
grunt do something-v
)以检查livereload服务器是否启动以及端口是否正确。

在没有livereload的情况下,Watch为我提供了开箱即用的功能。您是否尝试删除livereload选项和脚本包含

然后:咕噜;咕噜手表


(默认任务进行构建,然后watch密切关注更改)

这是我的Grunfile.js,我的connect版本是0.9.0,此配置可用于不同的Liveread端口

module.exports = function (grunt) {

require('load-grunt-tasks')(grunt);
require('time-grunt')(grunt);
grunt.initConfig({
    watch: {
        demo: {
            files: ['web/*.*'],
            options: {
                livereload: 5000
            }
        },
        dev:{
            files: ['web1/*.*'],
            options: {
                livereload: 3030
            }
        }
    },
    connect: {
        demo: {
            options: {
                base: "web",
                port: 1111,
                hostname: '*',
                livereload: 5000,
                open: {
                    target: 'http://127.0.0.1:1111'
                }
            }
        },
        dev:{
            options: {
                base: "web1",
                port: 2222,
                hostname: '*',
                livereload: 3030,
                open: {
                    target: 'http://127.0.0.1:2222'
                }
            }
        }
    }
})
grunt.registerTask('demo', ['connect:demo', 'watch:demo']);
grunt.registerTask('dev',['connect:dev','watch:dev']);

}

您的js与我的js完全相同,但-v提示有点酷。这不完全相同,不同之处在于将选项放在watch对象的根上。我只有在sass编译时遇到了完全相同的问题,而不是更少。当我使用-v开关时,我可以看到Live reload服务器已在端口35729上启动。当我对其中一个sass文件进行更改时,页面将重新加载,但什么也没有发生。有趣的是,输出显示:实时重新加载样式\v4\sass\u core\u salvaged.scss。。。因此,它看起来像是将更改后的scss文件发送到实时重新加载服务器,而不是发送生成的css文件。我该如何更改此设置?您用于启动的确切命令是什么?谢谢您的提示,这是我在stackoverflow中的第一个答案,我发现这个问题只存在于我的chrome中,它可以在mac10.10 safari和websocket中更改端口成功
module.exports = function (grunt) {

require('load-grunt-tasks')(grunt);
require('time-grunt')(grunt);
grunt.initConfig({
    watch: {
        demo: {
            files: ['web/*.*'],
            options: {
                livereload: 5000
            }
        },
        dev:{
            files: ['web1/*.*'],
            options: {
                livereload: 3030
            }
        }
    },
    connect: {
        demo: {
            options: {
                base: "web",
                port: 1111,
                hostname: '*',
                livereload: 5000,
                open: {
                    target: 'http://127.0.0.1:1111'
                }
            }
        },
        dev:{
            options: {
                base: "web1",
                port: 2222,
                hostname: '*',
                livereload: 3030,
                open: {
                    target: 'http://127.0.0.1:2222'
                }
            }
        }
    }
})
grunt.registerTask('demo', ['connect:demo', 'watch:demo']);
grunt.registerTask('dev',['connect:dev','watch:dev']);