网站前台代码,国内网站主机,网站后台更新栏目后 网站,龙湖什么网站做宣传一、什么是模版引擎 模版引擎是一个从页面模版根据一定的规则生成HTML的工具#xff0c;PHP首发#xff0c;随后出现了ASP、JSP都沿用这个模式#xff0c;即建立一个HTML页面模版#xff0c;插入可执行的代码。运行时动态生成HTML。缺点#xff1a; 页面功能逻辑与页面布局…一、什么是模版引擎 模版引擎是一个从页面模版根据一定的规则生成HTML的工具PHP首发随后出现了ASP、JSP都沿用这个模式即建立一个HTML页面模版插入可执行的代码。运行时动态生成HTML。缺点
页面功能逻辑与页面布局样式耦合网站规模变大以后逐渐难以维护语法复杂对于非技术的网页设计者来说门槛高难以学习。功能过于全面页面设计者可以在页面上编程不利于功能划分也使模版解析效率降低。后来MVC架构的诞生模版引擎包含在服务器端控制器得到用户请求后从模型获取数据调用模版引擎模版引擎以数据和页面模版为输入生成HTML页面然后返回给控制器。由控制器交回客户端。二、使用模版引擎
基于javascript的模版引擎有许多种实现我们推荐使用ejs它学习起来简单与express集成良好它的标准是javacript实现的它不仅可以运行在服务器端还可以运行在浏览器中。服务端运行ejs这样减少了对浏览器的依赖而且更符合传统架构的习惯。分析工程运行
app.set(views,__dirname/views); 指定页面模版的存放目录app.set(view engine,ejs) 使用ejs模版引擎res.render(index,{title:pcat}) 调用模版引擎接受两个参数参数一模版的名称即views目录下的模版文件名不包括扩展名参数二传递给模版的数据。ejs的标签
1.% code % JavaSctipt代码2.%code% 显示替换过HTML特殊字符的内容3.%-code% 显示原始HTML内容三、页面布局 Express从2.x升级到3.x ejs不支持模版引擎,jade支持layout.ejs是一个模版布局模版它描述整个页面的框架架构默认情况下每个单独的页面都继承自这个框架替换掉%-body%部分这个功能非常有用。1. 一般为了保持整个网站的一致风格HTML的head部分以及底部的大量内容是重复的因此我们可以把它们放到layout.ejs中然后把body填充成自定义部分即可。
如果想关闭它则app.set(view options,{layout:false})2.如果网站不止需要一种页面布局例如后台和前台那么我们可以在调用视图模版的时候指定上layout.(ejs的写法)
.ejs的实现 res.render(userlist,{
title:后台管理,layout:admin // 它就会寻找admin.ejs的布局模版。}) jade的实现
在我们的请求的目的页面中第一句话写上extends(继承) 模版布局模版名\例如 extends layout