Express.js app经常在没有硬刷新的情况下加载新路由?

时间:2013-07-21 15:53:27

标签: node.js express

我遇到了一个奇怪的问题。当我在Express.js应用程序中从一个页面导航到另一个页面时(目前我有三个页面:Home,About,Contact),页面显示为空白。只有当我在Mac上进行硬刷新(Shift Command R)时才会加载所有资产。当我查看Chrome开发工具中的“网络”选项卡时,看起来资产正在加载 - 我不是看到404的。

以下是我的应用目录的屏幕截图,供您查看我正在使用的内容: http://d.pr/i/lQlV

另外,这是我的app.js文件:

var express = require('express')
    , partials = require('express-partials')
    , app = express();

app.configure(function() {
    app.set('title', ' | ToDo App');
    app.set('view engine', 'ejs');
    app.use(express.static(__dirname + '/public'));
    app.set('views', __dirname + '/views');
    app.use(partials());
});

app.get('/', function(request, response, next) {
    response.render('index', { title: "Home" + app.get('title') });
});

app.get('/home', function(request, response, next) {
    response.redirect('/');
});

app.get('/about', function(request, response) {
    response.render('about', { title: "About" + app.get('title') });
});

app.get('/contact', function(request, response) {
    response.render('contact', { title: "Contact" + app.get('title') });
});

app.use(function(request, response){
    response.render('404', { title: "404" + app.get('title') });
});

app.listen(3000);

1 个答案:

答案 0 :(得分:0)

您没有使用处理所有路线的app.router

app.use(app.router); 

app.get('/', function(req,res,next){
res.render('index');
});