模板引挚 jade ejs
// asl sum翡翠
后台使用如下:
const jade = require('jade')
//pretty 美化的意思,指的是渲染的布局会美化 2020-2-15
var str = jade.renderFile('./ views / 1.jade',{pretty:true})
console.log(str)
前台布局:
html
头
样式
scritpt(src ='a.js')
链接(href =“ a.css”,ref =“ relsetylesh”)
身体
div
该
li
输入(类型=“文本”,id =“ txt1”,值=“ abc”)
______________________________________________________________________
style有二个方法:json 或 ""
div(style =“ width:2000; heigth:2000px; background:red”)
div(style = {width:“ 200px”,heigth:“ 200”})
____________________________________________
身体
div(title =“ aaa”,id =“ div1”)
div&attributes({title:‘aaa’}) // div&attributes({}) 能将属性化为json
_______________________________________________________________________2020-02-15
path模块改名
const path = require('path');
var str = "c:\\wawp\\www\\a.html";
var obj = path.parse(str);
console.log(obj);
改名的时候。这儿用的是multer 上传包
用在peq.felie中增加一个对象


为了使设置cookieSession不污染全局,建议用一个闭包形式包起来
()()形式
(funcction(){
var keys=[];
for(var i=0;i<1000; i++){
keys[i]='a'+Math.random();
}
server.use(cookieSession({
name:'sess_id';
keys:keys,
maxAge: 20*60* 1000
}))
})()
______________________________________________
___________________________________________________________2020-02-20
模板引挚
const server = require('express')();
const consolidate = require('consolidate'); // 将html设置为默认扩展
server.set('view engine' , 'html');
// 指定模版文件位置,这边表示的是同级目录
server.set('views' , './');
// 指定将ejs文件渲染成html文件
server.engine('html' , consolidate.ejs); // 当用户访问/index时,渲染1.ejs,下同 server.get('/index' , (req , res) => {
// render第二个参数可以跟一个json,十分方便
res.render('1.ejs' , {username:'eric'});
});
server.get('/admin' , (req , res) => {
res.render('2.ejs' , {username:'eric'});
}); server.listen(3000);
————————————————————————————————————————————————————————————————————————————————
server.get('/index',function(req,res){
if(req.session.userid){
res.render('i.ejs',{name:'blue'})
}else{
res.render('login.ejs',{})
}
})
____________________________________________router 测试
var foo = express.Route();
server.use('/xxx', foo);
foo.get('/',function(req,res){
res.end('router text')
})
————————————————————————————————————————————————router 属于自带
子路由
Router -------子路由
var router1=express.Router();
server.use('/',router1);
var r = express.router();
router1.use('usr_mode', r)
r.get('rXX',function(){
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>代码简价
})
——————————————————————————————————————————————————————————————————————————————2020-02-20
模板引挚 jade ejs的更多相关文章
- 一个简单的模板引(han)擎(shu)
自制一个简单的模板引(han)擎(shu) 原理 说大了 实际上是模板函数 原理呢就是简单的字符串替换 第一版 var data = { username: 'Muhha' } str = '< ...
- [js高手之路]Node.js模板引擎教程-jade速学与实战4-模板引用,继承,插件使用
一.block 模块复用 把需要复用的模块用block定义 block后面跟上模块的名字,引用一次block 内容就会被复用一次 编译之后的结果: 二,继承模板(extends) 在实际开发中,网站的 ...
- node jade || ejs引擎模板
1.jade:破坏式2.ejs:保留式 -------------------------------------------------------------------------------- ...
- express jade ejs 为什么要用这些?
express是快速构建web应用的一个框架 线上文档 http://www.expressjs.com.cn/ 不用express行不行呢? 看了网上的回答:不用express直接搭,等你 ...
- 学习篇:NodeJS中的模板引擎:jade
NodeJS 模板引擎作用:生成页面 在node常用的模板引擎一般是 1.jade --破坏式的.侵入式.强依赖(对原有的html体系不友好,走自己的一套体系)2.ejs --温和的.非侵入式的.弱依 ...
- Node - EJS模板应用(node+express+ejs)
准备工作: 工具:Webstorm 1. 新建一个文件夹为blogs(随意). 一个js文件app.js. 一个文件夹views,文件夹内一个index.ejs文件,文件夹asstes内style.c ...
- pug模板引擎(原jade)
前面的话 为什么要引入pug,pug有什么特别之处呢?有一些嵌套层次较深的页面,可能会出现巢状嵌套,如下图所示 在后期维护和修改时,一不小心少了一个尖括号,或者某个标签的开始和闭合没有对应上,就会导致 ...
- [js高手之路]Node.js模板引擎教程-jade速学与实战1
环境准备: 全局安装jade: npm install jade -g 初始化项目package.json: npm init --yes 安装完成之后,可以使用 jade --help 查看jade ...
- [js高手之路]Node.js模板引擎教程-jade速学与实战2-流程控制,转义与非转义
一.转义与非转义 jade模板文件代码: doctype html html head meta(charset='utf-8') title jade学习-by ghostwu body h3 转义 ...
随机推荐
- silky微服务简介
代理主机 silky微服务定义了三种类型的代理主机,开发者可以根据需要选择合适的silky代理主机托管微服务应用.代理主机定义了一个Startup模块,该模块给出了使用该种类型主机所必须依赖的模块. ...
- SpringBoot-技术专区-用正确的姿势如何用外置tomcat配置及运行(Tomcat优化分析)
前提概要 在特别特殊的时候,我们可能需要外置tomcat去运行程序,例如alitomcat等特殊场景,方便我们去定时化开发项目或者其他特殊场景. 外置tomcat执行 pom.xml文件首先更改打包方 ...
- 基于ScheduledExecutorService的并发定时任务处理能力测试
测试代码 定时器类 package business.util; import java.util.concurrent.Executors; import java.util.concurrent. ...
- MySQL高级查询 & 事务机制
1.基础查询where 高级条件查询Where子句 SELECT empno,ename,sal,hiredate FROM t_tmp WHERE deptno=10 AND (sal+IFNULL ...
- MySQL-15-主从复制
企业高可用性标准 1 全年无故障率(非计划内故障停机) 99.9% ----> 0.001*365*24*60=525.6 min 99.99% ----> 0.0001*365*24*6 ...
- Java 多线程与并发【知识点笔记】
Java 多线程与并发[知识点笔记] Java多线程与并发 先说一下线程与进程的由来: 在初期的计算机,计算机只能串行执行任务,并且需要长时间的等待用户的输入才行 到了后来,出现了批处理,可以预先将用 ...
- 22javascript笔记(2)
JavaScript 1.js事件和作用域 js事件:html页面中每一个元素都可以产生某些触发js函数的事件.这些事件是可以被js侦测到的一种行为,并且js程序能应对这些事件. 常见的html事件 ...
- netty系列之:netty中的懒人编码解码器
目录 简介 netty中的内置编码器 使用codec要注意的问题 netty内置的基本codec base64 bytes compression json marshalling protobuf ...
- stm32高级定时器1互补输出 验证代码
GPIO_InitTypeDef GPIO_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_OCInitTypeDe ...
- 一文搞懂B树、B-树、B+树
前言 B树和B-树是同一种数据结构,如果不清楚的话,会被面试官忽悠,所以本文介绍两种数据结构,B树和B+树,废话不多数咱们开干. B树 介绍 在计算机科学中,B树是一种自平衡的树,能够保持数据有序.这 ...