2017-03-07 107 views
1

使用Express版本4.15.2時,瀏覽器中出現以下(顯然經常遇到)錯誤--- 500錯誤:查找視圖「索引」失敗Function.app.render。我已經閱讀了提供給幾個這樣的受害者的解決方案,但是我的__dirname值確實指向了正確的views文件夾,並且'views'的正確路徑實際上是在app.js文件中構建的,我正在使用Windows命令行(即> node app.js)。我注意到唯一讓人感到奇怪的是view文件夾中的'index'文件被命名爲'index.jade'。我使用帕格而不是玉。其實尚未使用Jade已經停產?這可能是問題嗎?現在是否應該在Windows上有'.pug'擴展名,或者索引文件中沒有擴展名?快速錯誤 - 500錯誤:無法查找視圖「索引」


根據您的要求,看看配置(雖然,這是非常標準的,和我沒有改變什麼,但「玉」,以「哈巴狗」),下面是唯一的配置我在應用中看到.js文件。 (和改變從「玉」到「哈巴狗」視圖引擎擺脫了沒有找到「玉」的錯誤。)


          
  
// all environments 
 
app.set('port', process.env.PORT || 3000); 
 
app.set('views', __dirname + '/views'); 
 
app.set('view engine', 'jade'); 
 
app.use(express.favicon()); 
 
app.use(express.logger('dev')); 
 
app.use(express.bodyParser()); 
 
app.use(express.methodOverride()); 
 
app.use(app.router); 
 
app.use(express.static(path.join(__dirname, 'public'))); 
 

 
// development only 
 
if ('development' === app.get('env')) { 
 
    app.use(express.errorHandler()); 
 
} 
 
    
 
app.get('/', routes.index); 
 
app.get('/users', user.list);
+1

可以顯示您用於配置Express的代碼以及您的目錄結構(至少與模板相關的部分)? – robertklep

+0

@Talllisfan你找到了解決方案嗎?我也有同樣的問題。我強調希望有人會回答,因爲我有同樣的問題! –

+0

我正在執行一個常見的app.js文件,在這裏是Sam's Nodejs 24小時書籍。它非常短,我被告知(也許不正確),它不需要任何配置,雖然我確實將'玉'改爲'帕格',但是我沒有從這樣做中得到一個錯誤。這個文件夾結構是express-generator在創建我的項目文件夾時設置的標準結構,正如我上面所述,__dirname指向正確的文件。 – Tallisfan

回答

0

是的,的確,我所要做的就是改擴建.jade到索引和佈局文件上的擴展.pug,並解決了這個問題。因此,問題不是__dirname;這確實是正確的。問題是它不喜歡.jade擴展名。

謝謝你的想法anwyay。