Gruntjs 如何在一个页面中从多个服务器使用livereload?(特别是使用Grunt.js连接和监视)

Gruntjs 如何在一个页面中从多个服务器使用livereload?(特别是使用Grunt.js连接和监视),gruntjs,livereload,grunt-contrib-watch,Gruntjs,Livereload,Grunt Contrib Watch,我试图让livereload在一个网站上工作,由不同的服务器、不同的项目触发。我将Grunt.js与Grunt contrib connect和Grunt contrib watch一起使用 以下是一个例子: ProjectA当前正在本地主机33333上运行livereload服务器 ProjectB当前正在本地主机44444上运行livereload服务器 ProjectC当前正在本地主机55555上运行livereload服务器 现在让我们假设一下,我在localhost:9800上运行

我试图让livereload在一个网站上工作,由不同的服务器、不同的项目触发。我将Grunt.js与Grunt contrib connect和Grunt contrib watch一起使用

以下是一个例子:

  • ProjectA当前正在本地主机33333上运行livereload服务器
  • ProjectB当前正在本地主机44444上运行livereload服务器
  • ProjectC当前正在本地主机55555上运行livereload服务器
现在让我们假设一下,我在localhost:9800上运行了一个网页,它应该会从livereloading中受益 因此,在大多数情况下,如果只存在一个livereload进程,则localhost:9800/index.html中会有类似的内容:


<body>
  ...
  <script type="text/javascript" charset="UTF-8" src="//localhost:35729/livereload.js"></script>
</body>

此配置无法工作

js实例化全局对象livereload see()。 每个LiveReload对象只有一个web套接字可用,所以您不能有三个套接字

我希望拥有与您相同的配置,但今天我找不到适合它的解决方案


<body>
...
  <script type="text/javascript" charset="UTF-8" src="//localhost:33333/livereload.js"></script>
  <script type="text/javascript" charset="UTF-8" src="//localhost:44444/livereload.js"></script>
  <script type="text/javascript" charset="UTF-8" src="//localhost:55555/livereload.js"></script>
</body>

  watch: {

    css: {
      files: ['www/**/*.css'],
      options: {
        livereload: 33333
      }
    },

    html: {
      files: ['www/**/*.html'],
      options: {
        livereload: 44444
      }
    },

    js: {
      files: ['www/**/*.js'],
      options: {
        livereload: 55555
      }
    },
...
}