首頁 web前端 html教學 Express使用html模板的程式碼分析

Express使用html模板的程式碼分析

Jun 11, 2018 pm 05:20 PM
express html模板

這篇文章主要介紹了Express使用html模板的詳細程式碼,內容還挺不錯的,現在分享給大家,也給大家做個參考。一起跟著小編過來看看吧

express預設使用jade模板,可以設定讓其支援使用ejs或html模板。

1. 安裝ejs

在專案根目錄安裝ejs.

npm install ejs
登入後複製

2、引入ejs##

var ejs = require('ejs'); //我是新引入的ejs插件
登入後複製

3、設定html引擎

app.engine('html', ejs.__express);
登入後複製

設定視圖引擎

app.set('view engine', 'html');
登入後複製

儲存後重新啟動服務,即可存取html檔案。

附註:在express搭建的伺服器中,html引擎沒有被配置,直接加入即可;視圖引擎已配置,修改配置即可。

-------------------------------------------- ------------------------------------------

修改的這些設定做了什麼操作?

為什麼修改了視圖引擎還要增加設定html引擎?

我們先來看看.engine()這個方法。

app.engine(ext, callback);
登入後複製

Express預設使用jade模板。如果你嘗試載入 "foo.jade" 文件,Express內部會呼叫如下操作。

app.engine('jade', require('jade').__express);
登入後複製

如果要使用其他模板引擎,如:將EJS模板映射至".html"檔案:

app.engine('html', require('ejs').__express);
登入後複製

這行程式碼中,實際呼叫了EJS的.renderFile()方法, ejs.__express是該方法在EJS內部的另一個名字。

因為載入的模板引擎後呼叫的是同一個方法.__express,所以如果使用的是ejs模板,不用配置該項目。

總結:使用html模板,需增加  app.engine('html', require('ejs').__express);

使用EJS模板,不用設定此項目。

此時如果在views資料夾裡建立index.html檔案或index.ejs文件,存取的仍然是預設的index.jade檔案。這是為什麼呢?這裡要說的就是上面提到的第二項設定app.set('view engine', 'html');

#app.set(name, 值);

在.set()方法的參數中,有一項是'view engine',表示沒有指定文件模板格式時,預設使用的引擎插件。如果這裡設定為html文件,設定路由指定文件時,只要寫文件名,就會找對應的html檔。於此,腦洞大開,試了一下在views中建立3個檔案test.jade、test.ejs、test.html。路由設定如下。訪問正常!每個路由都指向對應的檔案。當然這種寫法是完全不被建議也不符合現實的。

router.get('/test/',function(req, res, next){
 res.render('test', {title: 'HTML'});
});

router.get('/test1/',function(req, res, next){
 res.render('test.ejs', {title: 'EJS'});
});

router.get('/test2/',function(req, res, next){
 res.render('test.jade', {title: 'jade});
});
登入後複製
以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網!

相關推薦:

在Html中使用Requirejs進行模組化開發的解析

以上是Express使用html模板的程式碼分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

node專案中如何使用express來處理檔案的上傳 node專案中如何使用express來處理檔案的上傳 Mar 28, 2023 pm 07:28 PM

怎麼處理文件上傳?以下這篇文章為大家介紹一下node專案中如何使用express來處理文件的上傳,希望對大家有幫助!

深入比較Express和Laravel:如何選擇最佳框架? 深入比較Express和Laravel:如何選擇最佳框架? Mar 09, 2024 pm 01:33 PM

深入比較Express和Laravel:如何選擇最佳框架?在選擇一個適合自己專案的後端框架時,Express和Laravel無疑是兩個備受開發者歡迎的選擇。 Express是基於Node.js的輕量級框架,而Laravel則是基於PHP的流行框架。本文將深入比較這兩個框架的優缺點,並提供具體的程式碼範例,以幫助開發者選擇最適合自己需求的框架。效能和擴展性Expr

Express和Laravel的比較分析:選擇更適合你的框架 Express和Laravel的比較分析:選擇更適合你的框架 Mar 10, 2024 pm 10:15 PM

Express和Laravel是兩個非常受歡迎的Web框架,分別代表了JavaScript和PHP兩大開發語言的優秀框架。本文將針對這兩個架構進行比較分析,幫助開發者選擇更適合自己專案需求的框架。一、框架簡介Express是一個基於Node.js平台的Web應用程式框架,它提供了一系列強大的功能和工具,使開發者可以快速建立高效能的網路應用程式。 Express

聊聊node+express怎麼操作cookie 聊聊node+express怎麼操作cookie Jun 22, 2022 am 10:01 AM

node+express怎麼操作cookie?以下這篇文章就來跟大家介紹一下用node操作cookie的方法,希望對大家有幫助!

Express與Laravel:對比優劣勢,你會選哪一個? Express與Laravel:對比優劣勢,你會選哪一個? Mar 10, 2024 am 08:39 AM

Express與Laravel:對比優劣勢,你會選哪一個?在網路開發領域,Express和Laravel是兩個備受關注的框架。 Express是一個基於Node.js的靈活且輕量級的網頁應用框架,而Laravel是一個基於PHP的優雅且功能豐富的Web開發框架。本文將從功能、易用性、擴展性以及社群支援等方面來比較Express和Laravel的優劣勢,並結合

PHP如何處理HTML範本和頁面佈局? PHP如何處理HTML範本和頁面佈局? Jul 01, 2023 am 10:46 AM

PHP作為一種流行的伺服器端腳本語言,被廣泛用於開發網頁和網站。在網頁開發中,HTML範本和頁面佈局是重要的組成部分。本文將探討PHP如何處理HTML模板和頁面佈局。首先,HTML範本是一個網頁的骨架,包含了網頁的結構、版面配置和靜態內容。在PHP中處理HTML模板有多種方法,以下介紹兩種常用的方法。第一種方法是使用PHP本身的原生語法,將HTML程式碼直接嵌入到

如何利用React和Express搭建全端JavaScript應用 如何利用React和Express搭建全端JavaScript應用 Sep 26, 2023 pm 01:09 PM

如何利用React和Express來建構全端JavaScript應用引言:React和Express是目前非常流行的JavaScript框架,它們分別用於建構前端和後端應用。本文將介紹如何結合使用React和Express來建構一個全端JavaScript應用程式。我們將逐步講解如何搭建一個簡單的TodoList應用,同時提供具體的程式碼範例。一、準備工作在開始前

Express還是Laravel?選擇最適合你的後端框架 Express還是Laravel?選擇最適合你的後端框架 Mar 10, 2024 pm 06:06 PM

在選擇後端框架時,Express和Laravel都是非常受歡迎的選擇。 Express是基於Node.js的Web應用程式開發框架,而Laravel是基於PHP的Web應用程式開發框架。兩者各有優勢,選擇最適合自己的框架需要考慮多面向因素。 Express框架的優點在於它的靈活性和簡單的學習曲線。 Express的核心思想是“足夠小,足夠靈活”,它提供了大量的中間件

See all articles