最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nodejs express框架一個(gè)工程中同時(shí)使用ejs模版和jade模版

 更新時(shí)間:2015年12月28日 13:46:01   作者:GabrielChenCN  
這篇文章主要介紹了Nodejs express框架一個(gè)工程中同時(shí)使用ejs模版和jade模版 的相關(guān)資料,需要的朋友可以參考下

在某些項(xiàng)目中,比如你接手了一個(gè)別人的項(xiàng)目然后你不想用蛋疼的ejs,或者你不想用蛋疼的jade。你有不想重寫(xiě)之前的頁(yè)面,那么你現(xiàn)在可能需要新引入ejs或者jade模塊,你僅僅需要做下面兩步也許就能完成使用兩個(gè)模版的工作

1.consolidate.js

cd 到項(xiàng)目目錄:

npm install consolidate --save

打開(kāi)項(xiàng)目的app.js(也許你的叫其他名字)  

把a(bǔ)pp.js的形如下面的代碼片段

app.set('view engine', 'jade');

改為

var engines = require('consolidate');
app.engine('jade', engines.jade);
app.engine('html', engines.ejs);
// or use these
// app.engine('jade', require('jade').__express);
// app.engine('html', require('ejs').renderFile);
app.set('view engine', 'jade'); 

重啟工程就可以了

2.一點(diǎn)問(wèn)題

在我的一個(gè)項(xiàng)目A里我實(shí)際用到的代碼是

var engines = require('consolidate');
app.engine('jade', engines.jade);
app.engine('html', engines.ejs);
// app.engine('jade', require('jade').__express);
// app.engine('html', require('ejs').renderFile);
app.set('view engine', 'jade');
//多出以下一行
app.set('view engine', 'html'); 

這種寫(xiě)法在項(xiàng)目A里可以使用,但在另一個(gè)項(xiàng)目B里發(fā)現(xiàn)解析不了jade模板

而在項(xiàng)目B中只能使用

var engines = require('consolidate');
app.engine('jade', engines.jade);
app.engine('html', engines.ejs);
app.set('view engine', 'jade');
//或者
//app.engine('jade', require('jade').__express);
//app.engine('html', require('ejs').renderFile);
//app.set('view engine', 'jade'); 

Express框架中如何引用ejs模板引擎

 1.如何在項(xiàng)目中安裝ejs模板引擎

在NodeJS指南中利用利用以下命令建立網(wǎng)站的基本結(jié)構(gòu):

express -t ejs microblog

運(yùn)行這個(gè)命令后繼續(xù)運(yùn)行

cd microblog && npm install(安裝項(xiàng)目的依賴屬性),發(fā)現(xiàn)安裝的模板引擎是jade,而不是ejs。原因是現(xiàn)在的版本已經(jīng)沒(méi)有-t這個(gè)命令了,改為

express -e microblog

運(yùn)行完這個(gè)命令,繼續(xù)運(yùn)行cd microblog && npm install,ejs模板引擎就安裝好了

但是express3以上的版本把layout默認(rèn)給取消了,所以現(xiàn)在在views文件夾下并沒(méi)有生成layout.ejs。

2.安裝了ejs后,如何使用ejs的layout模板

安裝express-partials

在cmd中切換到項(xiàng)目目錄,運(yùn)行npm install express-partials或者

在 package.json 里面的 dependencies 添加 "express-partials": "*"。然后在項(xiàng)目目錄下運(yùn)行 npm install 。

然后在app.js 里面引用 express-partials,引用方法:

1.添加引用 var partials = require('express-partials');

2.在 app.set('view engine', 'ejs'); 下面添加 app.use(partials());

在需要引用模板的地方調(diào)用 layout:'模版名稱' 示例

app.get('/reg', function (req, res) {
res.render('reg', {
title: '用戶注冊(cè)',
layout: 'template'
}); 
}); 

以上內(nèi)容給大家介紹了Nodejs express框架一個(gè)工程中同時(shí)使用ejs模版和jade模版,希望大家喜歡。

相關(guān)文章

  • win系統(tǒng)下nodejs環(huán)境安裝配置

    win系統(tǒng)下nodejs環(huán)境安裝配置

    這篇文章主要介紹了win系統(tǒng)下nodejs環(huán)境安裝配置的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • Nodejs學(xué)習(xí)筆記之測(cè)試驅(qū)動(dòng)

    Nodejs學(xué)習(xí)筆記之測(cè)試驅(qū)動(dòng)

    本文是本系列文章的第二篇,主要是測(cè)試針對(duì)于web后端的驅(qū)動(dòng),在開(kāi)發(fā)過(guò)程中,在開(kāi)發(fā)完成一段代碼后如果負(fù)責(zé)任而不是說(shuō)完全把問(wèn)題交給測(cè)試人員去發(fā)現(xiàn)的話,這個(gè)時(shí)候通常都會(huì)去做一些手動(dòng)的測(cè)試。
    2015-04-04
  • Node.js console控制臺(tái)簡(jiǎn)單用法分析

    Node.js console控制臺(tái)簡(jiǎn)單用法分析

    這篇文章主要介紹了Node.js console控制臺(tái)簡(jiǎn)單用法,結(jié)合實(shí)例形式分析了nodejs console控制臺(tái)功能、常見(jiàn)函數(shù)與簡(jiǎn)單使用技巧,需要的朋友可以參考下
    2019-01-01
  • Node.js中讀取TXT文件內(nèi)容fs.readFile()用法

    Node.js中讀取TXT文件內(nèi)容fs.readFile()用法

    在本篇文章中我們給大家分享一下Node.js中讀取TXT文件內(nèi)容以及fs.readFile()的用法,需要的朋友們可以參考下。
    2018-10-10
  • node.js中的url.parse方法使用說(shuō)明

    node.js中的url.parse方法使用說(shuō)明

    這篇文章主要介紹了node.js中的url.parse方法使用說(shuō)明,本文介紹了url.parse的方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • mac下的nodejs環(huán)境安裝的步驟

    mac下的nodejs環(huán)境安裝的步驟

    本篇文章主要介紹了mac下的nodejs環(huán)境安裝的步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-05-05
  • 詳解如何在Node.js的httpServer中接收前端發(fā)送的arraybuffer數(shù)據(jù)

    詳解如何在Node.js的httpServer中接收前端發(fā)送的arraybuffer數(shù)據(jù)

    這篇文章主要介紹了詳解如何在Node.js的httpServer中接收前端發(fā)送的arraybuffer數(shù)據(jù),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • 關(guān)于NodeJS中的循環(huán)引用詳解

    關(guān)于NodeJS中的循環(huán)引用詳解

    這篇文章主要給大家介紹了關(guān)于NodeJS中的循環(huán)引用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用NodeJS具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • VSCode通過(guò)Ctrl+P快速打開(kāi)node_modules中的文件的操作方法

    VSCode通過(guò)Ctrl+P快速打開(kāi)node_modules中的文件的操作方法

    由于node_modules目錄包含的文件太多,在VSCode中默認(rèn)情況下是禁止搜索node_modules目錄的,在這種情況下,我們將不得不依次展開(kāi)node_modules的文件目錄樹(shù),來(lái)查找我們所需要的文件,接下來(lái)介紹VSCode如何通過(guò)Ctrl+P快速打開(kāi)node_modules中的文件,需要的朋友可以參考下
    2023-07-07
  • Node.js 中使用 async 函數(shù)的方法

    Node.js 中使用 async 函數(shù)的方法

    async是一個(gè)流程控制工具包,提供了直接而強(qiáng)大的異步功能?;贘avascript為Node.js設(shè)計(jì),同時(shí)也可以直接在瀏覽器中使用。
    2017-11-11

最新評(píng)論

新丰县| 内乡县| 杂多县| 文成县| 巴彦淖尔市| 正宁县| 邵阳市| 福建省| 原阳县| 龙门县| 山丹县| 萨迦县| 麻城市| 顺昌县| 衡南县| 怀宁县| 烟台市| 萍乡市| 沅江市| 武宁县| 满城县| 扎囊县| 肃南| 集贤县| 延寿县| 武安市| 石河子市| 综艺| 贵南县| 金川县| 保靖县| 南平市| 深水埗区| 龙南县| 麦盖提县| 望江县| 红河县| 安徽省| 玉树县| 永康市| 乃东县|