- 博客(17)
- 收藏
- 关注
原创 setTimeout,promise,async/await执行顺序
实例 async function async1() { console.log('async1 start'); await async2(); console.log('async1 end'); } async function async2() { console.log('async2 start'); } console.log('script start'); setTimeout(function () { console.log
2020-07-25 11:10:19
492
转载 react权限---菜单的动态生成
前端权限控制一般有4种 1.菜单的控制 2.界面的控制 3.按钮的控制 4.请求和响应的控制 本文主要讲述如何使用react框架事件前端权限对菜单的控制。 第一步: 准备菜单数据,在该菜单数据中配置好路由跳转的路径和组件存在的路径。 菜单数据如下所示: permissionList:[{ permission_no: 1 menu_name: "系统设置" menu_url: "/index/sysIndex" path_name: "systemIndex" component_path: "user/H
2020-07-15 10:25:03
968
原创 token的使用
一.为什么要使用token 1.token完全有应用管理,它可以避开同源策略 2.token可以避免CSRF攻击 3.token可以是无状态的,可以在多个服务间共享 二.token的作用 1.防止表单重复提交 2.身份验证 三.token身份验证的使用-----前端 大概流程: 1.客户端使用用户名跟密码请求登录 2.服务端收到请求,去验证用户名与密码 验证成功后,服务端会签发一个 Token,再把这个 Token 发送给客户端 3.客户端收到 Token 以后可以把它存储起来,比如放在 Cookie 里或
2020-07-15 10:21:03
912
原创 BFC布局
BFC是一种独立的渲染布局,BFC里面的元素不会影响BFC外面的元素。 BFC创建? 1.float属性不为none 2.根元素 3.position为absolute或relative 4.display为inline-block,flex,inline-flex,table-cell,table-caption 5.overflow不为visible BFC的作用 1.避免margin值的重叠 2.解决浮动带来的影响 3.实现自适应两栏布局 body { width: 100%; positio
2020-06-27 23:59:10
297
原创 reflow与repain
reflow与repain reflow重流,当该元素的样式改变时,其父元素祖先元素会发生变化的情况称为重流,重流是不可避免的 repain重绘,当子元素样式的改变只会影响背景颜色,文字颜色,边框,不影响布局时称为重绘 重绘影响 1:改变窗口大小 2:改变文字大小 3:内容的改变,如用户在输入框中敲字 4:激活伪类,如:hover 5:操作class属性 6:脚本操作DOM 7:计算offsetWidth和offsetHeight 那么为了减少回流要注意哪些方式呢? 1:不要通过父级来改变子元素样式,最好直
2020-06-27 23:43:50
571
原创 js数组去重方法总结
1.es6中的set去重 语法new Set(要去重的数组),返回一个数组 eg: var arr1= [1,3,4,1,4,5,7,{},{},NaN,true,null,true,‘hahah’,‘kk’,‘hahah’,NaN,null] var arr2 = new Set(arr1); console.log(arr1); console.log(arr2); // 语法new Set(要去重的数组),返回一个数组 注:此方法有一个缺陷不能去掉多余的对象 2,slice去重 var arr1 =
2020-06-27 23:42:16
277
原创 变量和函数的提升
变量的申明和函数的定义都会提升,提升到对应作用域的最前面 实例1变量的提升 var a=1; function text() { console.log(a); var a=10; console.log(a); // 变量的声明会提升,变量不会提升,提升到对应作用域的最前面 // 因此第一个打印的值为undefined, // 第二个打印的值为10 } text(); 实例2函数的提升 function f() { for(var i=0;i<1;i++)
2020-05-14 20:17:12
163
原创 即时通讯 websocket
1.引入ws模块 const ws=require(“ws”);//引入ws服务 2.创建服务器地址,这个地址是客户端请求socket的地址 var server=new ws.Server({host:“服务器IP地址”,port:端口号}); 注意:ws服务器端的端口号不能与nodejs的端口号相同 3.给服务的连接事件添加对应的方法 server.on(‘connection’,function (ws) { 1.每当建立一个连接成功后,就将这个连接加入到数组中 cons.push(ws); //得到
2020-05-13 18:33:17
301
原创 上传文件
前端代码: 上传 注:文件上传使用form表单时,要设置编码,enctype="multipart/form-data" 后台代码: 使用中间件 multer 1.4.2 新建一个 multerUtil.js文件 var multer=require('multer'); var storage = multer.diskStorage({ //设置上传后文件路径,uploads文件夹会自动创建。 destination: function (req, file, c
2020-05-11 23:34:32
186
原创 文件下载
1.a标签下载:就业意向 注意此方法不适用于图片的下载 图片的下载: 前端: 下载图片 后端: app.get("/download.do",(request,response)=>{ response.download(文件地址",“文件重命名”); }); 注意:重命名的原因数据库存储文件一般是以年月日的格式存储的,为了方便查找所以重命名 ...
2020-05-11 23:33:14
163
原创 发送短信
发送短信 leanengine 0.4.2版本 使用leanengine模块发送短信 前端代码: 验证码注册 步骤: 1.引入模块 const AV=require("leanengine"); 2.配置 const AV=require("leanengine"); AV.initialize(AppID,AppKey) 3.拦截短信 使用AV.Cloud.requestSmsCode({ mobilePhoneNumber:手机号
2020-05-11 23:29:55
361
原创 发送邮件 nodejs
使用leanengine模块发送短信 使用nodemailer模块发送邮件步骤 1.引入nodemailer模块 const mailer=require(“nodemailer”);//引入nodemailer模块 2.配置发件人的信息 let transport=mailer.createTransport({ service:“qq”,//服务商 auth:{ user:“2256678514”,//账号 pass:“mkqpgutwvlfkdjea”//密码,如果用户商是qq邮箱,pass不是密码而
2020-05-11 22:41:56
263
原创 nodejs默认设置首页
app.use(myexpress.static(__dirname+"/public",{index:"首页地址"})); 例子: app.use(myexpress.static(__dirname+"/public",{index:"login.html"}));//默认设置首页
2020-04-22 17:11:10
2529
原创 css3 弹性盒子
弹性盒子由弹性容器(Flex container)和弹性子元素(Flex item)组成。 弹性盒子的使用: 父容器必须设置:“display:flex” flex 属性用于设置或检索弹性盒模型对象的子元素如何分配空间:在这里插入代码片 子元素设置 flex 让所有弹性盒模型对象的子元素都有相同的长度,且忽略它们内部的内容: 目前的积分为 0 第 1关 ...
2020-03-31 20:56:33
139
原创 学生管理 修改思路
点击修改时原有信息要显示,则 1.获取当前学生的信息,可以整理成一个函数 2.得到修改的数据 3.将数据显示(如果添加显示表单和修改是使用同一个表单,则设置一个全局变量 var stuNoOper=" “,判断是添加还是删除。 添加时 stuNoOper=” “, 修改时 stuNoOper=” 学生学号" ) ...
2020-03-27 17:23:35
281
原创 python词云解决中文问题
将文件做词云是遇中文文件的处理办法: #-_coding:utf8-- from wordcloud import WordCloud import PIL .Image as image import numpy as np import jieba def trans_CN(text): word_list = jieba.cut(text) # 分词后在单独个体之间加上空格 result =...
2020-03-10 21:16:30
688
原创 html相关知识
这几天学习了一下HTML的相关知识。HTML是一种超标记语言,不仅可以展示文字,还可以展示图片,音频录像等文件。编写网页就像是修建房子一样,前端工程师的工作和建筑设计师的工作差不多。编写一个网页先用HTML搭建好网页结构,然后再用css将网页美化。网页结构一般包括头部,内容,尾部几部分。每个部分分别对应不同的标签。网页要求结构,样式,行为分离。用HTML搭建结构,css美化网页,JavaScrip...
2020-03-01 18:25:29
217
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅