ejs-模板
我今天第一次使用,使用的时候,遇到一些问题,还好有朋友帮我一起解决;
我先说说我使用过程中遇到的问题;
在express框架中引用
app.set('views',__dirname + '/views');
app.set('view engine', 'ejs');
路由中渲染
res.render('main/index',{
userInfo:req.userInfo
});
运行的时候老是报错;
说我这句话,有问题;
res.render('main/index',{
userInfo:req.userInfo
});
修改方案:
后面我把index.html 文件 后缀名改成 ejs,就好了; 我在想难道一定要ejs后缀名吗? 修改方案:
在express框架中引用:
var ejs=require('ejs');
app.engine('html', ejs.__express);
app.set('views',__dirname + '/views');
app.set('view engine', 'html');
路由中渲染
res.render('main/index',{
userInfo:req.userInfo
});
安装:
npm install ejs;
定义:
EJS是一个JavaScript模板库,用来从JSON数据中生成HTML字符串;
语法:
ejs.open=<%;
ejs.close=%>;
可以更改:
ejs.open = '{{';
ejs.close = '}}';
赋值: <%= %>
注意:<%= ;
< ,%,=,三者之间不能有空格
eg:<h2><%=title %></h2>
控制流:<% %>
eg: forEach循环
<ul>
<% users.forEach(function(user){ %>
<% include user/show %>
<% }) %>
</ul>
eg: if语句
<% if (user) { %>
<h2><%= user.name %></h2>
<% } %>
过滤Filters: |
eg:eg:
<p><%=: users | first | capitalize %></p> 布局:Layouts
<% include head %>
<h1>Title</h1>
<p>My page</p>
<% include foot %> 注释:<%# '' %>
eg:<%# '用于非转义的输出' %> 转义标签:<%- %>
eg:<%- '<h1>123</h1>' %>
ejs-模板的更多相关文章
- ejs模板中的四种表达式输出形式
在ejs模板中,通常会用下面四种方式在HTML中输出服务端的变量或表达式的值: 1. 直接在<%%>中写表达式或变量.这种情况通常只是用来进行表达式计算或给变量赋值,不会有任何输出,被称作 ...
- 如何在 ejs 模板中使用 helper function 外部函数进行特殊处理?
一般我们想要在 ejs 模板中使用外部函数用于特殊的处理,比如:<%= ellipsis(title, 30) %> 通常的做法是: 使用 app.locals 来定义: app.loca ...
- 在express站点中使用ejs模板引擎
在express站点中使用ejs模板引擎 文/玄魂 目录 在express站点中使用ejs模板引擎 前言 1.1 安装 1.2修改app.js 1.3创建测试页面 前言 使用 vs创建 ...
- NodeJS - Express 3.0下ejs模板使用 partial展现 片段视图
如果你也在看Node.js开发指南,如果你也在一步一步实现 microBlog 项目!也许你会遇到本文提到的问题,如果你用的是Express 3.0 本书实例背景是 Express 2.0 而如今升级 ...
- Node.js学习(14)----EJS模板引擎
这个入门教程将从以下几个方面来讲解: 1. 引入EJS 2. 创建一个模板 3. 使用视图工具组件 4. 使用错误处理组件 5. 什么情况下应使用EJS 引入EJS 在我们正式开始前,我们先来做点准备 ...
- Node - EJS模板应用(node+express+ejs)
准备工作: 工具:Webstorm 1. 新建一个文件夹为blogs(随意). 一个js文件app.js. 一个文件夹views,文件夹内一个index.ejs文件,文件夹asstes内style.c ...
- ch1-使用路由-静态资源-404页面-ejs模板
1 package.json 项目文件夹根目录创建这个文件 //要依赖的模块 "dependencies": { //dependency 依赖的复数形式 "expres ...
- nodejs-5.1 ejs模板引擎
ejs官方文档:https://ejs.bootcss.com/ 1.什么是 EJS? "E" 代表 "effective",即[高效]. EJS 是一套简单的 ...
- 前端笔记之NodeJS(三)Express&ejs模板引擎&请求识别
一.Express框架 1.1基本使用 创建http服务器特别麻烦,express框架解决了这个的问题. Express在node界的地位,就相当于jQuery在DOM界的地位.jQuery的核心就是 ...
- Node的express配置使用ejs模板
注册ejs模板为html页.以.ejs为后缀的模板页,现在的后缀名可以是.html app.engine('.html', require('ejs').__express); 设置视图模板的默认后缀 ...
随机推荐
- 学习Spring Security OAuth认证(一)-授权码模式
一.环境 spring boot+spring security+idea+maven+mybatis 主要是spring security 二.依赖 <dependency> <g ...
- 深入Spring Boot: 怎样排查 java.lang.ArrayStoreException
java.lang.ArrayStoreException 分析 这个demo来说明怎样排查一个spring boot 1应用升级到spring boot 2时可能出现的java.lang.Array ...
- loj 10000 活动安排
****这是一个贪心题,把结束时间排个序,然后留出更多的时间给后面的活动. #include<cstdio> #include<cstring> #include<alg ...
- Oracle Linux下载教程(以Oracle Linux 6.9为例)
一.说明 Oracle Linux是Oracle基于Redhat,针对Oracle系列软件(尤其是Oracle数据库)进行优化后的Linux发行版. 虽然Oracle Linux下载是免费的,但是并不 ...
- Oracle常用表和常见操作命令
一.说明 Oracle数据库数据库名.表名.字段名等不区分大小写,字段值区分大小写. Oracle单词之间一般用下划线连接:表名最后一般加s字段名最后一般没s. 二.常见数据表 dba_*DBA拥有的 ...
- Mysql InnoDB三大特性-- change buffer
Mysql InnoDB三大特性-- change buffer
- 将excel数据分块多线程导入
参考链接:http://blog.csdn.net/liqi_q/article/details/53032027
- mysql 数据迁移
最近线上系统新挂了一次磁盘,需要将系统磁盘下的 mysql 数据目录迁移到 数据盘上. 经过一番考察,mysql在安装时,使用了预编译的二进制tar.gz包.共有两处配置了 datadir属性 /et ...
- SpringMVC @RequestParam和@RequestBody的区别
问题:@Requestbody 用的时候遇到400和415错误,因为请求格式不对. @RequestBody @RequestBody能把简单json结构参数转换成实体类,如下代码: @Request ...
- 201621123001 《Java程序设计》第11周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 一个进程可以同时运行多个不同线程,不同的线程执行不同的任务 Java线程是通过java.lang包中定义的Thre ...