我正在开发一个前端有 ember.js,后端有 node.js + express.js 的应用程序。ember.js 前端是基于 yeoman 生成的模板。
在开发过程中,如何在同一台服务器上运行后端和前端应用程序并实现'liverreload'。yeoman 生成的 grunt.js 文件仅在启用了 LiveReload 的服务器中运行 ember 应用程序。我不想将一台服务器用于前端,另一台用于后端。
PS 在生产版本中,我正在启动节点服务器并通过 express 静态目录提供 ember 应用程序。
以下是我的节点/快递代码:
var gzippo = require('gzippo');
var express = require('express');
var app = express();
app.configure(function(){
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(gzippo.staticGzip("" + __dirname + "/dist")); // built ember application is deployed in this dir
});
app.configure('development', function(){
app.use(express.errorHandler());
});
app.use(function(req, res, next){
console.log('%s %s', req.method, req.url);
console.log('__dirname : %s', __dirname);
next();
});
app.post('/', function(req, res, next){
req.method = "GET";
next();
});
var port = process.env.PORT || 9000;
var host = 'localhost.com'
app.listen(port, host, function() {
console.log("Listening on " + port);
});
yeoman 生成的 grunt.js 文件没有变化。请指导我如何实现上述解释的场景。
谢谢