簡體   English   中英

如何在同一節點服務器上同時呈現Jade模板和HTML文件?

[英]How can I render both Jade templates and HTML files on same Node server?

我目前在Node項目中使用Jade模板。 設置非常基本:

app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

我正在使用純HTML構建網站的新部分,並且HTML模板與Jade模板位於不同的文件夾中。 我的問題是,如何設置內容,以便也可以使用HTML視圖引擎來提供來自其他目錄的文件(即,不是來自views )?

您有幾個選擇。

  1. 您可以將純HTML放入.jade文件中,它將起作用。

  2. 或者,您可以設置靜態路由器以直接提供HTML文件。

     app.use(express.static('./html-views')); 

    這樣,您的./html-views所有內容都將被靜態投放。 GET /view.html將投放./html-views/view.html

好了,這些HTML文件將需要與您的nodejs服務器進行交互以更改值,例如“ title”。

在jade中,title = pageTitle(ref: http ://jade-lang.com/)起作用。

但是,要在提供HTML頁面時獲得相同的功能,您必須首先將HTML頁面作為對請求的響應,然后再發出另一個AJAX請求以對DOM進行更改。

要提供HTML頁面,您可以使用“ fs”讀取HTML文件內容,然后以HTML內容響應用戶請求,或者使用express函數“ response.sendFile('/ path / to / file.html')”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM