Javascript 咕噜+;Express+;LiveReload继续在默认端口3000上重新启动服务器
我有一个车把驱动的模板应用程序,它是通过一个简单的基于Express的Node.js服务器生成的。为了便于开发,我一直在使用Grunt将其设置为实时重新加载 我读过无数关于设置实时重新加载的博客和GitHub自述;这被证明是一个非常循环的琐事(一个页面链接到另一个页面,然后再链接到另一个页面,以此类推)。我读到的东西没有一个是一致的,所有的东西似乎都支持实时重新加载,但没有实际解释如何做——要找到一个明确的方法来完成这项工作,真是一件非常困难的事情 然而,我有一个工作,自我加载,快速驱动的项目,通过以下方式: grunfile.jsJavascript 咕噜+;Express+;LiveReload继续在默认端口3000上重新启动服务器,javascript,node.js,gruntjs,livereload,Javascript,Node.js,Gruntjs,Livereload,我有一个车把驱动的模板应用程序,它是通过一个简单的基于Express的Node.js服务器生成的。为了便于开发,我一直在使用Grunt将其设置为实时重新加载 我读过无数关于设置实时重新加载的博客和GitHub自述;这被证明是一个非常循环的琐事(一个页面链接到另一个页面,然后再链接到另一个页面,以此类推)。我读到的东西没有一个是一致的,所有的东西似乎都支持实时重新加载,但没有实际解释如何做——要找到一个明确的方法来完成这项工作,真是一件非常困难的事情 然而,我有一个工作,自我加载,快速驱动的项目,
var files = [
'markup/*',
'examples/*'
]
module.exports = function(grunt) {
require('load-grunt-tasks')(grunt)
grunt.initConfig({
express: {
options: {
port: 8080
},
dev: {
options: {
port: 8080,
script: 'server.js',
background: true
}
}
},
watch: {
options: {
livereload: true
},
express: {
files: files,
tasks: ['express:dev'],
options: {
spawn: false
}
},
},
})
grunt.registerTask('default', ['express:dev', 'watch'])
}
Package.json
...
"devDependencies": {
"connect-livereload": "^0.5.4",
"grunt": "~0.4.5",
"grunt-contrib-watch": "^1.0.0",
"grunt-express-server": "^0.5.3",
"load-grunt-tasks": "^3.5.0"
}
...
在我的Express应用程序server.js中:
// Live reload
app.use(require('connect-livereload')({
port: 35729
}))
// Server
var server = app.listen(process.env.PORT || 8080, function() {
console.log("Express app started on port " + server.address().port)
})
<script src="//localhost:35729/livereload.js"></script>
并且在my Handlebar driven index.html模板中:
// Live reload
app.use(require('connect-livereload')({
port: 35729
}))
// Server
var server = app.listen(process.env.PORT || 8080, function() {
console.log("Express app started on port " + server.address().port)
})
<script src="//localhost:35729/livereload.js"></script>
注意Express应用程序现在是如何监听:3000
和:8080
?发生什么事?我想是我的Grunfile里有什么东西没有设置好吧