2

我正在开发一个前端有 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 文件没有变化。请指导我如何实现上述解释的场景。

谢谢

4

0 回答 0