1. 模板引擎

  • 为了使 art-template模板引擎能够更好地和Express框架配合,模板引擎在原art-template模板引擎的基础上封装了 express-art-template

安装

使用 npm install art-template express-art-template 命令进行安装

配置

// 配置使用 art-template 模板引擎
// 第一个参数表示: 当渲染以 .art 结尾的文件的时候,使用 art-template 模板引擎
// express-art-template 是专门用来在 Express 中把art-template 整合到 Express中的
// 虽然我们这里不需要加载 art-template ,但是也必须安装
// 原因就在于 express-art-template 依赖了 art-templateapp.engine('art', require('express-art-template'));

使用

1.基础使用:

// Express 为 response 相应对象提供了一个方法:render
// render 方法默认是不可以用的,但是如果配置了模板引擎,就可以使用了
// res.render('html模板名',{模板数据})
// 第一个参数不能写路径,默认会去项目中的views目录查找该模板文件
// 也就是说 Express 有一个约定: 开发人员把所有的视图文件都放到views 目录中
// 如果想要修改默认的views 目录,则可以:app.set('views',render 函数的默认路径)
// 但是需要注意:这样的话,要把404.html 改成 404.art,并且文件名也要改app.get('/', function(req, res) {res.render('404.art')
})

2.修改默认路径:

ps:两个app.set语句的第一个参数 views 和 view engin 都是固定的,是模板内部规定好的

3.如果不喜欢用art,或者有些编辑器识别不了,可以使用以下方法:

app.engine('html', require('express-art-template'));app.get('/', function(req, res) {res.render('404.html')
})

补充:在express 中重定向的 API : res.redirect(’/’)

2. app.locals对象

关于渲染模板数据,在真实的开发中,有这样一种场景,在不同的页面中总会有一些公共区域,公共区域所要展示的数据都是一样的,在代码当中要如何查询这个公共数据呢?

最直接的做法就是在不同的页面路由中都去查询这个数据,然后再通过render方法填充到模板中,但这样做会产生非常多的冗余代码。

有没有一种办法,让查询公共数据的代码只写一次,然后在所有需要用到这个数据的模板中都可以拿到这个数据。

在app服务器对象下面有一个locals对象,我们可以将公共数据作为locals下面的属性。locals下面的数据在所有的模板中都可以直接获取到。

使用

将变量设置到 app.locals 对象下面,这个数据在所有的模板中都可以获取到。

在 Express中配置使用 art-template 模板引擎 --- express-art-template相关推荐

  1. Spring Boot 使用 Kotlin Script Template 模板引擎kts 开发web应用

    Spring Boot 使用 Kotlin Script Template 模板引擎kts 开发web应用 在 Spring Framework 5.0 M4 中引入了一个专门的Kotlin支持. K ...

  2. Node.js(二)——pug模板引擎,nunjucks模板引擎,在koa中使用pug和nunjucks模板引擎

    目录 1.知识点及课堂目标 2.模板引擎 3.pug模板引擎使用 3.1安装pug 3.2pug常用语法 3.2.1通过缩进关系,代替以往html的层级包含关系. 3.2.2html 元素属性/sty ...

  3. template模板引擎的使用例子

    背景:使用模板引擎可以避免复杂的数据操作,例如数据很多时,把数据渲染到表单中是特别麻烦的事情.如果使用模板引擎可以很方便的帮助我们完成这些繁琐的操作. 模板引擎有很多种,但是每种模板引擎的使用方式都是 ...

  4. node --- 在express中配置使用模板引擎(art-template)

    下载依赖: npm install --save art-template express-art-template 配置: // app.js const express = require(&qu ...

  5. JavaScript中template模板引擎

    这篇文章主要为大家详细介绍了JavaScript模板引擎Template.js使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 template.js 一款 JavaScript 模板引擎, ...

  6. .NET 中安全高效跨平台的模板引擎 Fluid 使用文档

    Liquid 是一门开源的模板语言,由 Shopify 创造并用 Ruby 实现.它是 Shopify 主题的主要构成部分,并且被用于加载店铺系统的动态内容.它是一种安全的模板语言,对于非程序员的受众 ...

  7. pug模板语法在vue中的使用--HTML的模板引擎

    一. 介绍 pug,原名jade,是流行的HTML模板引擎,,最大的特色是使用缩进排列替代成对标签.它简化了HTML的成对标签的写法,使代码更加简洁.开发效率更高,但是同时它也带来了一些副作用:可移植 ...

  8. express中res.sendFile、res.render、express.static()三者的使用

    一.res.sendFile 必须使用绝对路径,它的作用是响应出去一个任意类型文件,也可以直接返回html文件做渲染. app.get("/kkk", (req, res) =&g ...

  9. 如何在语音字幕生成软件 “字幕助手“ 中配置使用有道ASR引擎

    随着科技进步.信息技术和交通运输方面取得的发展,现在世界上不同种族.不同国家.不同语言的人之间交流越来越方便了.在视频这个领域,外文的需求也越来越强烈了. 字幕助手是一款根据音频自动识别生成字幕的辅助 ...

最新文章

  1. SpringBoot基础系列-SpringCache使用
  2. torch_geometric笔记:数据集 ENZYMES Minibatches
  3. 如何在eclipse中查看源码
  4. [JavaWeb-HTML]HTML标签_文件标签
  5. Python爬虫之:下载软件包
  6. 随机初始化(代码实现)
  7. SylixOS arm64 异常向量表
  8. 青鸟影院的最后一部分
  9. (转)互利主义:道德经济人的基本行为准则
  10. PMP试题 | 每日一练
  11. 自动化和半自动矢量化提取地物矢量轮廓
  12. MATLAB变压器设备故障模型,电力变压器内部故障简便仿真模型
  13. C#支付宝扫码支付代码完整版
  14. Altium未连接的网络DRC检查不出的问题
  15. JAVA项目接入腾讯应用宝YSDK平台之QQ微信登录接入模式详解
  16. 理解AdaBoost算法
  17. 动物miRNA靶基因本地预测(三)—— 靶基因预测与结果分析
  18. [java]已知文件 source.txt 中的内容如下,其中,username、yonghu 都表示用户名,password、mima都表示密码,level、dengji都表示等级
  19. C++ 如何判断姓名字符串符合百家姓
  20. 极简使用︱Gemsim-FastText 词向量训练以及OOV(out-of-word)问题有效解决

热门文章

  1. 服务器中毒怎么办,如何预防
  2. android付款功能,Qpay,利用 Android 新特性,把所有付款方式放在一起 | App+1
  3. 基于SSM的大学生校园兼职平台
  4. 外卖中常见的饮料名称大全
  5. 上海人工智能实验室自动驾驶团队校招实习同步进行中!
  6. 使用vconsole进行手机端调试
  7. Opencv——python画点、画框
  8. Vikinger v1.9.3汉化版WordPress模板主题
  9. BitMap的recycle问题
  10. 提交代码到Gitlab自动同步备份到Gitee