2016-01-26 102 views
0

當客戶端路由發生變化時,我需要停止快速刷新頁面。我使用MVC框架Mithril.js來處理我的客戶端路由,因爲它不需要在路由更改時刷新頁面。我爲我的/ api路線使用快遞。這是在服務器端我當前的路由代碼:停止快速重新加載路由更改頁面

var assetFolder = Path.resolve(__dirname, '../client/public') 
routes.use(express.static(assetFolder)) 


if (process.env.NODE_ENV !== 'test') { 
    routes.get('/*', function(req, res){ 
    res.sendFile(assetFolder + '/index.html') 
    }); 
    app.use('/', routes) 
} 

即使有這種路由代碼,當我改變在客戶端的頁面之間仍然將刷新路線。有沒有辦法阻止這種情況發生?注意:我正在使用mithril的路徑名路由模式,因爲這是我需要的應用程序。

謝謝!

回答

0

替換app.use('/', routes)app.use('*', routes)基本上你想呈現所有路線的index.html文件。 或嘗試這個它應該工作

var assetFolder = path.resolve(__dirname, './public') 
app.get('/*', function(req, res, next){ 
    res.sendFile(assetFolder + '/index.html'); 
}); 
+0

這正是我想要做的,但只要我這樣做,我的應用程序停止在客戶端工作。沒有呈現? –

+0

什麼是「路線」?添加更多信息。我已經在角度配置中使用類似的東西,它的工作原理 var assetFolder = path.resolve(__ dirname,'./public') app.get('/ *',function(req,res,next){ res .sendFile(assetFolder +'/index.html'); }); – Hassaan