我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Express使用html模板的详细代码

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

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, value);

在.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});
});

官方API:http://www.expressjs.com.cn/4x/api.html#app.engine

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Express使用html模板的详细代码

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Express使用html模板的详细代码

express默认使用jade模板,可以配置让其支持使用ejs或html模板。 1. 安装ejs 在项目根目录安装ejs.npm install ejs2、引入ejsvar ejs = require('ejs'); //我是新引入的ejs
2022-06-04

详解在express站点中使用ejs模板引擎

使用 vs创建的express站点,默认使用的是jade模板引擎,但是我不太喜欢这种方式,因为我觉得html本身的语义特性是我喜欢的,另外html本身也足够简洁,使用html自身做为模板语言更符合我的喜好,所以我选择ejs。 1、安装 在网
2022-06-04

一文详细PHP模板引擎的原理(附代码示例)

开发一个web项目,通常分为两部分,一部分是GUI,即界面、美工,使用HTML,CSS,JS编写,另一部分则是业务逻辑,即程序、功能,使用PHP编写。而模板引擎则是联系这两部分的“桥梁”,可理解成一个PHP类,里面定义了许多方法,实现了将PHP的原始输出加载上界面样式后再输出。没用模板之前的编写的代码是这样的:
2022-08-08

Eclipse的代码模板功能怎么用

这篇文章主要介绍了Eclipse的代码模板功能怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Eclipse中的“代码模板”功能。什么是代码模板呢?举个例子,一个很常见的
2023-06-17

Node.js使用express写接口的具体代码

这篇文章主要介绍了Node.js使用express写接口,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
2023-03-15

vscode中如何配置并使用.vue代码模板

本篇内容介绍了“vscode中如何配置并使用.vue代码模板”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!vscode里使用.vue代码模板
2023-06-25

WPF怎么使用代码创建数据模板DataTemplate

这篇文章主要讲解了“WPF怎么使用代码创建数据模板DataTemplate”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“WPF怎么使用代码创建数据模板DataTemplate”吧!起因我们都
2023-06-29

JavaScript Object.defineProperty与proxy代理模式的使用详细分析

这篇文章主要介绍了JavaScript Object.defineProperty与proxy代理模式的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
2022-11-13

怎么使用vue代码获取json并应用到模板

这篇文章主要介绍了怎么使用vue代码获取json并应用到模板的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用vue代码获取json并应用到模板文章都会有所收获,下面我们一起来看看吧。代码如下:
2023-07-04

C++ 函数模板详解:提升代码可重用性的秘诀

函数模板允许创建适用于各种数据类型的代码。它使用类型参数化函数,编译器会生成针对特定数据类型优化的具体化函数。使用函数模板有助于提升代码可重用性,带来灵活性,并提升性能优化,但要注意可能的性能损失、代码可读性降低和运行时错误。C++ 函数模
C++ 函数模板详解:提升代码可重用性的秘诀
2024-04-27

详解织梦模板DEDECMS对discuz论坛的一些常用调用代码

dede调用DZ论坛帖子及特定板块帖子的调用方法 论坛最新主题:{dedcAiKTe:loop table="cdb_threads" sort="tid" row="10″} 2022-06-12

编程热搜

目录