手表不刷新文件更改页面(快递网站)

时间:2013-10-28 13:21:41

标签: node.js express gruntjs grunt-contrib-watch

当我更改项目文件时,让浏览器自动重新加载页面会很不错。我有这个节点表达站点,服务器在'server.js'中定义

但是,我尝试了不同的grunt配置,但是没有一个配置导致浏览器重新加载文件更改,尽管'watch'任务会打印一条消息,指出文件发生了变化!

以下是相关的grunt配置:

watch: {
    all: {
        files: 'views/index.ejs', // for now only watch this file!
        options: {
            livereload: true
        }
    }
},
express: {
    options: {
        background: true,
        error: function(err, result, code) {},
        fallback: function() {},
        port: 3000
        delay: 0,
        output: ".+",
        debug: false
    },
    dev: {
        options: {
            script: './server.js',
            node_env: 'development',
            livereload: true
        }
    }
}
....

grunt.registerTask('server', [
    'express:dev',
    'open',
    'watch'
])
};

运行我做的任务

$> grunt server

有人可以解释这种配置有什么问题吗?

日Thnx

2 个答案:

答案 0 :(得分:1)

您需要从http://livereload.com/

安装livereload浏览器插件

答案 1 :(得分:0)

我正在尝试使用grunt livereload在我的node.js页面上重新加载css更改。我越来越接近解决我的问题了。所以从我目前所知,请纠正我如果我错了你不需要安装“livereload浏览器插件”吧?我在没有node.js的情况下单独使用grunt,我可以使用livereload而无需安装“livereload浏览器插件”我只需要在我的.html中添加一行(我遇到节点的问题是如何重新加载.ejs,我发现这个解决方法的页面/问题):所以我不知道是否安装livereload的东西是另一种方式来做脚本部分或如果这是我在我的问题中提到的情况如果我想活重新加载.ejs我必须安装插件。