自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 JSON的parse和stringify方法,不能解析\符号

let a = JSON.stringify({2:"\/'[]。.<>《》*-+()*&……%¥#@!~"})console.log(a) //结果:{"2":"/'[]。.<>《》*-+()*&……%¥#@!~"}let b = JSON.parse(a)console.log(b) //结果:{2: "/'[]。.<>《》*-+()*&……%¥#@!~"}...

2021-06-10 14:52:17 629

原创 拖拽过程中,遇到“:hover“选择器的小坑

:hover是鼠标在移入过程中触发hover下的css效果。但是,在拖拽某个元素的过程中,可能导致触发失败。经尝试:改为js的mouseover、mouseout触发,同样没有效果;更改拖拽元素和:hover元素的z-index,使拖拽元素在:hover元素下面,可以触发,但是,拖拽元素会被挡住。最终结果::hover无法触发,是因为拖拽元素将鼠标与:hover元素隔挡住了,所以,将拖拽元素与鼠标位置进行相对位移,相对位移的距离不用太大,使鼠标与:hover元素接触即可。...

2020-10-24 12:44:34 1455

原创 阶段巩固10-12

css3动画transition属性,它允许我们在限定时间内将元素的某个属性值转换为另一个属性值。语法:transition: 属性 持续事件 速度 延迟;transform属性,它允许我们位移、旋转、缩放、倾斜元素。它的值分别有:改变位置translate(200px,200px);改变元素的大小倍数scale(1.6,2);x轴和y轴的旋转角度skew(-45deg,45deg);整体旋转角度rotate(45deg)。@keyframes关键帧属性,它定义一个动画名称,比如@keyfram

2020-10-20 01:19:30 176

原创 跨域情况下,axios发起post请求的CORS处理

情景:node运用koa库,发起后端服务;前端axios发起post请求,传送json数据。坑:axios默认的content-type是application/json;utf-8。如此一来,直接变成了cors的复杂请求。如果只是简单请求,koa-router可以进行如下设置:router.post('/login',()=>{ ctx.set("Access-Control-Allow-Origin", "http://localhost:3000") ctx.set("Access-C

2020-10-03 23:30:14 10225

原创 vscode修改json.maxItemsComputed配置

这个编辑器警告的意思是:在安装插件的时候,package-lock.json文档的symbols数量达到了json.maxItemsComputed上限。如果要取消这个警告,需要通过修改Setting.json文件,来覆盖defaultSetting.json文件。注意,defaultSetting.json文件是只读的,不能直接修改。通过快捷键ctrl+shift+p,打开setting.json。在json中添加一个设置:"json.maxItemsComputed": 6000。就解决了。.

2020-09-30 11:35:36 2585 1

原创 将字符串转为对象、将对象转为字符串的qs库

先通过nodejs安装npm i qsimport qs from 'qs'let zi = '?a=1&b=2'let a = qs.parse(s)console.log(a) //输出一个对象 {?a:1,b:2}let b = qs.parse(s.slice(1))console.log(b) //输出一个对象 {a:1,b:2}let dui = {a:1,b:2}let c = qs.stringify(dui) //输出一个字符串 'a=1&b=2'

2020-09-17 17:02:11 542

原创 react技术栈总结

React技术栈总结React部分基础概念React是国外FackBook公司在2013年5月开源的一个用于构建用户界面的JavaScript库,它采用了组件化的思想。所谓组件化,就是将一些简短、独立的代码片段组合成复杂的 UI 界面,这些代码片段被称作“组件”。React的一个愿景是,把浏览器兼容的问题解决了,让程序员不需要再和浏览器打交道,只需要和一个框架对接就好了。它这里边使用了一个Bable工具,能够将ES6的语法转译成ES5的语法,react-dom中也构建了一个虚拟库,使得代码可以在不同

2020-09-17 10:01:47 1598

原创 在NodeList和数组间,遍历数据,实现对应数组的删除,但是,只能通过index。

let items = document.querySelectorAll('class类'); //nodelistlet arr = [1,2,3,4,5,6,7,8,9]; //对象数组let number = []//先找到需要剔除掉node的indexitems.forEach((ele,index)=>{ if(判断需要剔除的对应node){ number.push(index) }})//通过filter一次性操作数组let result = arr.filt

2020-09-09 15:26:09 776

原创 本地存储的使用思路

cookie会在客户端于服务端之间交互,而且存储量较小,所以,一般用于存储用户的登录信息(账户密码),实现免输入密码,直接进入页面的操作。服务端利用koa-router配置路由,实现存储用户登录信息:router.post('/checkUser',(ctx,next)=>{ //判断用户输入的账户密码是否正确,如果不正确,那也没有存储的必要了 if(判断条件){ ctx.redirect('/index') //用户输入正确后,重定向至首页 if(ctx

2020-09-09 15:11:52 121

原创 客户端存储的3种方法cookies、localStorage、sessionStorage。

cookies是http协议下,服务端或者脚本可以维护客户端信息的一种方式。对于cookies,服务端和客户端都可以操作,但无论是在服务端还是客户端使用cookie,在request header里面都会带上cookie信息,所以,对于纯客户端的需求,这并不是最好的方式,因为并不涉及到服务端交互啊。纯本地存储的两种方式是localStorage和sessionStorage。三种存储方式的异同点:存储的内容都会转为字符串格式都有存储大小限制,但是localStorage和sessionStora

2020-09-09 14:47:15 282

原创 return只结束被调用的方法,foreach不能被return结束

return只结束被调用的方法:在多层嵌套中的return,它只会向上结束一层嵌套。(function(){ if(true){return 222}//执行结果是222 return 111;})()//执行结果是111引自MDN手册:foreach不能被return结束:注意: 除了抛出异常以外,没有办法中止或跳出 forEach() 循环。如果你需要中止或跳出循环,forEach()方法不是应当使用的工具。若你需要提前终止循环,你可以使用:一个简单的 for 循环for…

2020-09-08 11:32:46 636 5

原创 react基础笔记+类组件

React是用于构建用户界面的JavaScript库。它是声明式地编写UI,什么是声明式?命令式编程是告诉计算机怎么做(how),比如,我要先创建一个div,然后在div中输入XXX内容,最后把这个div插入到另一个dom节点中。而声明式编程时告诉计算机我们要什么(what),比如,JSX语法,我们写一段代码,剩下的交给计算机底层方法去实现。基于浏览器的模式,react.js提供react.js的核心功能代码,如虚拟DOM,组件等;而ReactDom提供了于浏览器交互的DOM功能,如:dom渲染:

2020-09-07 16:32:55 136

原创 nodejs简版聊天室

运用的库:Koa、http、socket.io。一个难点在于怎么起socket.io的服务://服务端const Koa = require('koa');const http = require('http');const serve = require('koa-static');const app = new Koa;app.use(serve(__dirname + '/static'));const server = http.createServer(app.callback(

2020-09-07 11:10:46 171

原创 前端轮询、后端sse、websocket

在一些场景中,比如Web在线通讯、即时报价系统、在线游戏,需要将后台发生的变化主动地、实时地传送到浏览器端,而不需要用户手动地刷新页面。解决方案:1、前端轮询。设置一个定时器,隔一段时间就向后台发送get请求,这个容易设置,但缺点是轮询的时间间隔设置,如果太长了,用户不能及时接收到更新的数据,如果太短了,查询请求过多,会增加服务器的负担。2、sse (server send event) 服务器推送数据。把这个定时器设置在后端,由后端去定时地发送数据。服务器向客户端声明,接下来要发送的是流信息。以流

2020-09-04 16:53:34 1431

原创 vs快捷键:全局修改某个词,代码重构

代码重构的快捷键:ctrl+shift+r,或者选择一段代码,然后点击右键,再选择重构;全局修改某个词的快捷键:F2。如果是在解构对象内,它的修改会是这样的。原代码如图let {a}=1;b = a;F2之后如图let {a: c}=1;b = c;...

2020-09-01 00:49:50 2002

原创 运用koa-static起静态服务加载index.html;form表单上传文件的注意事项

1、运用koa-static起静态服务,加载index.html的方法。在router中设置ctx.response.body为index.html文件的路径。router.get('/', (ctx) => { ctx.response.body = './static/index.html'})在koa-static中照常写static路径app.use(serve(__dirname + '/static'))2、运用form表单实现文件上传的几个注意事项a、form的

2020-09-01 00:42:39 935

原创 nodejs搭建后台管理系统的思路

第一步,先搭建小系统,模块分层+单一出口。接着小步骤走,测试一下。模块分层是router–>controller–>service–>model–>db(databases)–>model–>service–>controller–>router。数据传递的过程就是这样子。配置2个一级目录的js文件,一个用于连接数据库,然后在index.js文件中进行初始化,也就是建立连接了。index文件中写的是系统的整体架构,包括静态文件加载(koa-static

2020-08-29 22:57:16 1060

原创 nodejs阶段性总结--mvc模型分层

nodejs后端的分层组织第一层:router层,路由层,它的任务就是配置路由;第二层:controller层,控制层,它的任务就是参数校验和返回数据;第三层:service层,服务层,它的任务是业务逻辑的处理;第四层:model层,它的任务是和数据库交接。router嵌套controller,controller嵌套service,service嵌套model,model连接数据库。每一层都可以配一个单一路口文件,相当于一个转接口,将多对多,转变为多对一。好处是方便了在其他文件中导入目标文件,

2020-08-28 18:34:10 1152

原创 Vue基础笔记

Vue笔记Vue是一套用于构建用户界面的渐进式框架,它的5层渐进式是声明式渲染、组件系统、客户端路由、大规模状态管理、构建工具。Vue的核心是声明式渲染,一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统:指令与自定义指令指令分为框架内置指令和自定义指令。内置指令指令是带有v-前缀的特殊属性attrbute,指令attrbute的预期值是单个JavaScript表达式(比如三目表达式),但v-for是例外情况。指令的职责是,当表达式的值改变时,将其产生的连带影响,响应式地作用于DO

2020-08-27 11:17:27 177

原创 理解单线程,非阻塞I/O,中间件

单线程的理解是任务只能单个单个的处理,比如说:1+2=a,2+3=b,3+4=c。单线程就是先算出a,再算出b,接着算c。而多线程,假如是4线程,它就可以同时算出a、b、c。单线程的好处就是易于编程,不需要考虑太多状况,缺点是效率低。多线程的好处是效率高,性能高,但并不是所有的运算都可以被并行化,而且容易出现各种意外的稀奇古怪的bug。...

2020-08-25 11:11:39 453

原创 JS闭包、this指向的笔记

记录几个链接笔记,感谢各大神的博客!JS的let、var作用域,闭包问题:阮一峰老师关于闭包的博客this指向及应用

2020-08-19 00:01:23 74

原创 对称操作DOM,随机色彩涂鸦

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title></head><style> body{

2020-08-08 00:05:48 101

原创 LESS笔记

LESS可以在客户端运行,也可以在服务端运行。在客户端使用的方式一定要先引入.less样式<link rel=”stylesheet/less” type=”text/css” href=”×××.less”>之后引入less.js文件<script src=”path/less.js” type=”text/javascript”></script>监视模式:监视模式是客户端的一个功能,这个功能允许你当你改变样式的时候,客户端将自动刷新。要使用它,只要在U

2020-08-06 21:58:45 109

原创 原生js动画注意事项

字符串slice和substring的一些区别:

2020-06-28 00:01:41 277

原创 搭建静态网页的思路

学习思考:现阶段学习了html,css,js基础,找一些实战教程去练习,熟练现阶段基础后,继续按着学习路径前进就好。商城打造:先建立文件夹,用vs code打开,通过vs创立css img js文件夹,css里面创建reset common index三个css文件,reset用于适应不同浏览器,common用于收纳一些公用的样式,index当然是首问样式。然后写网页骨架,三部式:导航,头部,内容。写骨架的时候不着急写内容,先写html的骨架,由外到里,由上到下的顺序去观察网页,再复刻一遍。在标签内

2020-05-25 00:05:06 322

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除