使用grunt-express-server和grunt-contrib-watch实时重新加载

我正在使用grunt-express-server和grunt-contrib-watch为我的开发环境获取Livereloadfunction。 但不知何故,浏览器重新加载不工作,观看任务确实听取文件的变化,但不会导致重新加载浏览器。

下面是Gruntfile.js

module.exports=function(grunt){ grunt.loadNpmTasks('grunt-express-server'); grunt.loadNpmTasks('grunt-contrib-watch'); grunt.initConfig({ watch: { options: { livereload: true, }, express: { files: [ 'views/index.ejs','app.js' ], tasks: [ 'express:dev' ], options: {livereload: true, spawn: false } } } , express: { options: { port:8080 }, dev: { options: { script: 'app.js' } } } }); grunt.registerTask('serve', [ 'express:dev', 'watch' ]) } 

我已经读了这个岗位grunt-express-server contrib-watch和http://thanpol.as/grunt/Grunt-with-express-server-and-Livereload/ ,但无法弄清楚什么是错的。

这里是代码https://github.com/eMahtab/watch-reload的链接

这是grunt服务的快照

在这里输入图像说明

您必须在HTML中包含Live Reload Script:

 <script src="http://localhost:35729/livereload.js"> </script> 

在closures正文标记之前,将上述标记插入到views / index.ejs文件中

您可以在监视任务中设置默认端口:

 watch: { options: { livereload: true, }, express: { files: [ 'views/index.ejs','app.js' ], tasks: [ 'express:dev' ], options: {livereload: 1338, spawn: false, } } } 

具有自定义端口的脚本将是:

 <script src="http://localhost:1338/livereload.js"> </script> 

有关更多参考,请查看以下示例 。