nodejs 模板引擎
模板引擎:
– Jade:面向后端
使用#{}传递变量以及js表达式
属性传递变量直接等于变量即可,不能写成#{}形式,会报错。
‘-‘ 执行符
= 执行符
for循环
使用 ! 渲染dom节点
if判断渲染不同dom节点
jade中switch条件语句和js的语法有点不同,其用case…when…
class属性比较特殊,可以写多个class,jade会自动合并,其他属性不能重复
– Ejs:最常用,最广泛,前后端分离
特点:ejs是非破坏式(非侵入式)引擎,它不改变html的任何语法,可以让我们直接在标签内书写简单、直白的 JavaScript 代码。
<%=变量或表达式%>
ejs中输出data是在回调函数中,不像jade是定义一个变量来接收的
ejs中使用<%=变量名%> 输出数据到模板,如果输出如果含有html标签,<>会被编码(转义)
<%js代码%>
s中使用<%js代码%> 执行js代码, 不会输出,被称作无缓冲的代码。
由于不输出代码,会出现两行空行,可以换成<%_js代码_%>,会自动删除不输出产生的空行
<%-变量或表达式%>
默认使用<%%> 会将<>转义输出,可以使用<%-%>声明不转义输出
include
– handlerbars
模板引擎 Mustache 的扩展
– art-template
介绍 https://aui.github.io/art-template/zh-cn/docs/