复活吧,我的1+x考试2

105 阅读4分钟

1 express项目

keyvalue其他
引入express-session库const session = require(express-session);
通过urlencoded中间件,来解析表单中的url-encoded格式的数据app.use(express.urlencoded({extended: true}));
设置cookie过期时间为60分钟cookie:{maxAge: 60601000}
——获取用户名req.session.loginedUser
index.pug为默认首页'index.pug'res.render(xxx,)
重定向到/loginres.redirect('pug')
利用post发起请求app.post('post')
渲染错误处理页面error.pugres.render('error.pug')
注销操作,清空session数据delete req.session.loginedUser

2.原生html

keyvalue其他
手机端适配name ="viewport"
禁止缩放页面user-scalable=no<meta name ="viewport"content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
去掉列表前的点等列表样式list-style: none;
设置左浮动,是得li元素显示在同一行float:left
去除a标签等下划线text-decoration : none
——使用雪碧图,设置li元素的背景为 ../image/bg_btn_vip.png中向上偏移80px,向左偏移0像素的位置。且背景不平铺*/background: url(../image/bg_btn_vip.png) no-repeat 0 -80px
绝对定位position : absolute
设置左内边距为20pxpadding-left: 20px
为元素设置圆角边框,圆角的半径为10像素border-radius: 10px
设置文本居中中显示text-align: center

3.原生html

keyvalue其他
引入字体样式rel=stylesheet
使用字体图标样式fa-paypalclass="fa fa-paypal"
—使用字体图标样式fa-transgender-altclsss="fa fa-transgender-alt"
—使用fa-cny字体图标class="fa fa-cny"
设置块元素的局中margin:auto
向左浮动float:left
内边距上下各10像素,左右各20像素padding: 10px 20px 10px 20px上、右、下、左
css hack,提升优先级为最高color: red !important;/
置行元素显示为块级元素color: rgb(252,212,87);display: block;
最后一个子元素lili: last-child {}.nav ul li:nth-child(7)

4.

Express框架

keyvalue其他
引入自定义数据库连接模块require('./cnne.js')
要求:图书信息按其id字段值升序排序select * from db order by idmyconn.execute(————————(3)————————, function(err, results)res.render('bookindex.pug', { title: '图书列表', books: results,});
获取传入到参数idreq.query.id
获取页面输入到书籍的idreq.body.id
根据id更新booksinfo书籍列表中的数据'update booksinfo set name=?,author=?,press=? where id=?'myconn.execute( ————————(7)————————, [name,author,press,bookid]自动注入后面列表
创建数据库连接池createPoolmysql.createPool({})
—导出连接模块module.exports = myconn导出这个常量

5 css扩展的原生html

keyvalue其他
字体标签link ref='stylesheet'
使用字体图标fa-homefa fa-home
设置背景色background:rgb(255,225,255)
设置背景图片rgb(25,25,25) url("../dddd")标记语言 = : space
设置块元素的水平居中margin:0 auto不是center
设置第边框为5像素orange色实心线border-bottom: 5px solid orange地边框:border-bottom
表格单元格边框合并border-collapse: collapse边框折叠:合并
鼠标效果:hover {}{}中包含

6.使用jquery.min.js的原生html

keyvalue其他
设置图片宽度与页面宽度相同*img{width:100%}
导入js库src:js/ddd.js
获取窗口高度,需要对body和html设置高度为100%$(window).height()
—获取窗口滚动高度$(window).scorllTop
获取元素距离窗口顶部偏移高度$el.offset().top
监听窗口滚动事件,检查元素是否在可视范围内'scroll'on('scroll',()=>{})
使用标签选择器获取所有图片$('img')
遍历图片.each
查$cur是否进入可视窗口isshow($cur)
获取 $el的data-src属性,赋值给src$el.attr('data.src')获取熟悉.attr()

7

keyvalue其他
使用过滤取清除已完成任务filter
更新todos列表,重新渲染页面this.setState
App.js中定义的deleteTodo传递给子元素deleteTodo={this.de}
将App.js中定义的checkAll传递给子元素checkAll={this.checkAll}
用父组件传递过来的checkAll方法todos.props
—计算待完成事项列表中事项的总数todos.lenth
鼠标移入,背景色设置为‘#eeeeee’,鼠标移除,设置背景色为'white'}style={{backgroundColor:this.state.flag?'#eeeee':'white'
已完成事项显示删除线{{textDecoration:todoItem.done?'line-through':'none'}}
显示display: this.state.flag?'block':'none'
—监控是否按回车event.keyCode==13

8

keyvalue其他
样式
放大并旋转transform: scale(1.1) rotate ( 359deg)
执行时间为1stransition : transform 1s
第二个子元素:nth-child(2)
实现行高line-height:150px
去掉下划线text-decoration
过外边距实现上下外边距25像素,水平方向居中显示margin:25px auto
文本居中text-align:center

9

keyvalue其他
选中选项卡active
默认选中第一个选项卡和第一张图片class = 'active'
清除样式add('active').siblings('a').removeClass('active')
根据下标选择demoImgs.eq()
鼠标事件mouseenter:

var tabs = $('#tab a'),
    demoImgs = $('#panel img');
// 选项卡点击行为
tabs.each(function(index) {
    $(this).data('index', index).click(function() {
        //————(5)————根据下标选择元素
        var target = demoImgs.eq($(this).data('index'));
        // ————(4)————清除被选中的选项卡元素的兄弟元素的“active”样式
        $(this).addClass('active').siblings().removeClass('active');
        // 面板显示隐藏
        //————(8)————清除被选中的选项卡元素对应的图片元素 的兄弟元素的“active”样式
        target.addClass('active').siblings().removeClass('active');
    });
});
// 本demo的最重点,mouseenter鼠标移入行为预加载图片
/*————(9)————给tabs绑定事件鼠标移入事件*/
tabs.on({
    mouseenter: function() { /*————(6)————给tabs绑定鼠标移入事件*/
        var target;
        if (!this.preloaded) {
            //————(5)————根据下标选择元素
            target = demoImgs.eq($(this).data('index'));
            // 图片地址换成真实地址
            //——(7)——获取target的data-src属性,并移除该属性
            target.attr('src', target.data('src')).data('src', '');
            // 标记图片已加载
            this.preloaded = true;
        }
    }
});

10

image.png

image.png

image.png

image.png

image.png

11

image.png

image.png

image.png

image.png

12

image.png

image.png

image.png

13

image.png

image.png

image.png

image.png

14

image.png

image.png

image.png

image.png

15

image.png

image.png

image.png

16

image.png

image.png

image.png

image.png

image.png

17

image.png

image.png

image.png

-- 左右 -- 上下