Gruntjs 为livereload配置Gruntfile.js

Gruntjs 为livereload配置Gruntfile.js,gruntjs,grunt-contrib-watch,Gruntjs,Grunt Contrib Watch,我使用Laravel作为我的后端框架,我希望在某些文件发生修改时能够实时重新加载。我仍然没有成功地配置Gruntfile.js使其工作 我想,我应该需要2个插件,grunt contrib watch和grunt contrib connect,我已经配置了Grutnfile.js,如下所示 module.exports = function(grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.jso

我使用Laravel作为我的后端框架,我希望在某些文件发生修改时能够实时重新加载。我仍然没有成功地配置Gruntfile.js使其工作

我想,我应该需要2个插件,grunt contrib watch和grunt contrib connect,我已经配置了Grutnfile.js,如下所示

module.exports = function(grunt) {
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),

        watch: {
            options: {
                livereload: true
            },
            page: {
                files: ['*.php', '*.html'],
                tasks: ['connect']
            }
        },

        connect: {
            options: {
                port: 8000,
                protocol: 'http',
                hostname: '*',
                livereload: true
            }
        }
    });

    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.loadNpmTasks('grunt-contrib-connect');

    grunt.registerTask('do-server', ['watch']);
    grunt.registerTask('do-connect', ['connect']);
};
请帮我把事情搞定,当事情搞定后,我只需以grunt do connect的身份运行,grunt就会为我启动浏览器,或者我必须手动打开浏览器并将浏览器连接到指定的端口

谢谢。

是一个静态文件服务器。它不解析和服务PHP文件;只提供静态文件。您可以添加中间件来转换这些文件,因为它为这些文件提供服务,但如果使用PHP,则不太可能是您所需要的

您可能会使用nginx或apache作为服务器。PHP>=5.4还有一个内置的web服务器。因此,另一种选择是不连接

grunt contrib connect和grunt php都不会进行任何实时重新加载。现场重新加载全部由grunt contrib watch处理。配置
livereload:true
将在端口
35729
上启动在后台等待的服务器

接下来,向PHP页面添加脚本标记:
。然后通过
http://localhost:5000
或站点所在的域/端口。这将为实时重新加载服务器创建一个web套接字。更改文件后,监视任务将通知live reload服务器,该服务器随后将通过web套接字通知浏览器

如果不想将脚本标记添加到页面,可以安装浏览器扩展。有关更多信息,请参阅grunt contrib watch tasks文档:

是一个静态文件服务器。它不解析和服务PHP文件;只提供静态文件。您可以添加中间件来转换这些文件,因为它为这些文件提供服务,但如果使用PHP,则不太可能是您所需要的

您可能会使用nginx或apache作为服务器。PHP>=5.4还有一个内置的web服务器。因此,另一种选择是不连接

grunt contrib connect和grunt php都不会进行任何实时重新加载。现场重新加载全部由grunt contrib watch处理。配置
livereload:true
将在端口
35729
上启动在后台等待的服务器

接下来,向PHP页面添加脚本标记:
。然后通过
http://localhost:5000
或站点所在的域/端口。这将为实时重新加载服务器创建一个web套接字。更改文件后,监视任务将通知live reload服务器,该服务器随后将通过web套接字通知浏览器


如果不想将脚本标记添加到页面,可以安装浏览器扩展。有关更多信息,请参阅grunt contrib watch tasks文档:

我现在的理解是,我只需(1)将您建议的脚本标记添加到我的项目索引页,(2)在启用livereload选项的情况下配置grunt contrib watch,(3)开始使用正常的本地地址浏览我的项目,例如??是的。但如果遇到问题,请使用
grunt watch--verbose
查看有关您的手表文件及其触发时间的更多信息。我使用MAMP为PHP应用提供服务,grunt contrib watch使用livereload和grunt contrib connect。无需在grunt中包含您的[L]AMP堆栈。我现在的理解是,我只需(1)将您建议的脚本标记添加到我的项目索引页,(2)在启用livereload选项的情况下配置grunt contrib watch,(3)开始使用正常的本地地址浏览我的项目,例如??是的。但如果遇到问题,请使用
grunt watch--verbose
查看有关您的手表文件及其触发时间的更多信息。我使用MAMP为PHP应用提供服务,grunt contrib watch使用livereload和grunt contrib connect。无需将[L]放大器堆栈包含在grunt中。