通常咱們在作node web項目的時候,想使用咱們平時經常使用的html模板,express默認使用jade模板,自己是沒有HTML的,那麼如何實現呢?html
var app = express();
app.set('views', path.join(__dirname, 'views'));
//設置視圖引擎
app.set('view engine', 'ejs');
複製代碼
npm install ejs -D
複製代碼
var ejs = require('ejs');
複製代碼
var app = express();
var ejs = require('ejs');
app.set('views', path.join(__dirname, 'views'));
app.engine('html', ejs.__express);
app.set('view engine', 'html');
複製代碼
app.engine('html', require('ejs').__express);
複製代碼
將ejs模板映射至.html文件;node
上面其實是調用了ejs的.renderFile()方法,ejs.__express是該方法在ejs內部的另外一個名字。web
由於加載的模板引擎後調用的是同一個方法.__express,因此若是使用的是ejs模板,不用配置該項。express
在.set()方法的參數中,有一項是'view engine',表示沒有指定文件模板格式時,默認使用的引擎插件;npm
若是這裏設置爲html文件,設置路由指定文件時,只需寫文件名,就會找對應的html文件。bash