2014-02-20 148 views
0

有時當我加載我的頁面時,它不會顯示任何錯誤,實際上客戶端從服務器獲得正確的響應(具有所需的靜態內容),但是我看到一個空白頁。如果我嘗試檢查頁面上的元素,則所有內容都正確顯示。我有以下中間件配置,但我不認爲問題在這裏:Expressjs頁面不呈現

App.app.set('views', App.appPath("app/views")) 
App.app.set('view engine', 'jade'); 
App.app.set('view options', { 
    pretty: env === 'development' 
}) 
App.app.locals({ 
    constants: App.util('htmlConstants') 
}) 

// Middlewarez 
App.app.use(express.logger('dev')) 
App.app.use(express.compress()) 
App.app.use(express.bodyParser()) 
App.app.use(express.methodOverride()) 
App.app.use(appCookieParser) 
App.app.use(express.session({ 
    store: appRedisStore 
})) 
App.app.use(require('stylus').middleware(App.appPath('public'))) 
App.app.use(App.app.router) 

if (App.env === 'development') { 

App.test = function(path) { 
    return App.require("app/test/" + path) 
} 

App.app.use(express.static(App.appPath('public'))) 
} else { 
App.app.use(express.static(App.appPath('public')), { 
    maxAge: settings.oneDay 
}) 
} 

App.app.use(function(err, req, res, next) { 
    console.log('in error handler') 
    console.log(err.message) 
    next(err) 
}); 
App.app.use(express.errorHandler()); 
+0

您是否嘗試在瀏覽器中清除緩存?這可能是一個緩存的空白頁面。 –

+0

我也得到這種行爲。我使用翡翠模板,有時頁面會顯示爲空白,如果我將頁面切換回來,內容會突然顯示出來。 –

回答

-1

緩存可能有問題。

取而代之的是:

App.app.use(express.static(App.appPath('public'))) 
} else { 
App.app.use(express.static(App.appPath('public')), { 
    maxAge: settings.oneDay 
}) 
} 

這樣做:

//Development only 
App.app.configure('development', function() { 
    app.use(express.static(App.appPath('public')); 
    app.use(express.errorHandler()); 
}); 

//Production only 
App.app.configure('production', function() { 
    var threeMonths = 7884000000; //Cache time in ms 
    app.use(express.static(App.appPath('public'), { maxAge: threeMonths })); 
}); 

運行你的應用程序是這樣的:

sudo NODE_ENV=development node app.js 
+0

我不明白這與我目前的實施有何不同。 – Pio

-1

使用的console.log( 'VARIABLENAME');並觀察從db獲取數據的變量的值。

如果不正常,這意味着您可能會錯誤地從服務器端獲取數據!

+0

正如我所說,我得到所有的變量,剛開始它不會呈現頁面。如果我右鍵單擊它的工作頁面。 – Pio

+0

這可能會幫助你:[http://stackoverflow.com/questions/13792142/why-is-my-express-jade-app-rendering-blank-pages] – easynoder