2015-11-07 54 views
0

我有一個基本的index.html文件,當瀏覽器請求路由文件時,會爲該文件添加/附加一個html按鈕,但實際上不會寫入該文件。這聽起來很愚蠢,但我想這樣做,以便我可以爲查看儀表板的某些用戶動態添加「迷你應用」。將HTML附加到Express中的路由

+0

使用哪裏的描述問題,你被卡在解決自己嗎?你研究並嘗試了哪些解決方案? – jfriend00

回答

0

如果服務器上沒有實際的動態代碼(這將在每個請求上解析html並在其中放置一個在處理器上非常昂貴的按鈕),您將無法創建靜態代碼。我建議你使用javascript來放置這個按鈕,因爲你的問題沒有提供任何代碼進行改進。

如果您對模板開放,這是您的幸運日。 ExpressJS支持模板真的很好: http://expressjs.com/guide/using-template-engines.html

或者你可以將標籤如<%按鈕這裏%>和使用.replace或正則表達式從該特定文件的緩衝區或字符串替換。

編輯:

上次建議的示例。此代碼是不完整的,請不要在生產

app.get('/', function (req, res) { 
    fs.readFile(path_to_file, { encoding: 'utf8' }, function(error, buffer){ 
     if(error) return res.status(404).end(); 
     res.send(buffer.replace('<% tag %>', "<div ...>")); 
    }); 
});