- 博客(75)
- 收藏
- 关注

原创 网站
nginx下载 https://nginx.org/en/download.htmllodash中文网: https://www.lodashjs.com/css代码生成器: enjoycss.com
2020-06-11 10:42:49
1492
原创 localstorage和sessionstorage的区别
一样都是用来存储客户端临时信息的对象。1.生命周期localstorage:除非手动删除,否则一直存在sessionstorage:关闭窗口或标签页即关闭2。数据共享localstorage:同源共享sessionstorage:同源不共享...
2020-06-08 11:41:05
116
原创 css行间属性
vertical-align—设置元素垂直对齐方式(middle,baseline,bottom,top)line-height—设置行间的距离
2020-06-08 09:44:16
276
原创 margin和padding
padding:1.padding设置为负值无效2.内联元素中只有padding-left和padding-right有效3.块状元素上下左右都可以设置margin:1.margin:0 auto只对块级元素有效2.块级元素中----上下左右可以随意设置3.内联元素中----margin-top和margin-bottom不会影响行高...
2020-06-08 09:41:40
137
原创 nodejs实现JWT
1.生成tokena.安装jsonwebtokencnpm install jsonwebtoken --saveb.生成tokenvar jwt=require('jsonwebtoken'); router.get('/',async (req,res,next)=>{ var token=jwt.sign({name:'张三'},'this is sign',{ expiresIn:60 }); res.send(token); });
2020-05-28 16:26:00
555
原创 JWT认证笔记
JWT流程 1.浏览器使用用户名密码请求接口登录; 2.服务器验证通过后会利用JWT生成一个token返回给浏览器; 3.浏览器请求用户资料接口时会带着这个token; 4.服务器会用jwt对这个token进行验证,验证通过则浏览器可以获取数据JWT和session的区别注:CSRF:你登陆了网站A,结果没等退出又去登陆了网站B,而网站B中含有恶意请求,借着你在网站A的合法身份,一个劲的给网站A发送攻击数据。 1.JWT存储在客户端,而session存储在浏览器; 2.sess
2020-05-28 16:05:43
152
原创 nodejs动态路由
在.js文件中设置路由,通过ctx.params方式获取idrouter.get('/content/:id',async (ctx)=>{ console.log(ctx.params);})比如输入http://localhost:8000/content/id=2,可以获得console.log(ctx.params); //{ id: ‘id=2’ }
2020-05-27 11:20:13
848
1
原创 完成修改的编辑页面后返回到所修改数据所在的页面url
1.在admin中引入,定义prevPagectx.state.G={ prevPage:ctx.request.headers['referer'] /*上一页的地址*/ } ```2.在上一页的地方传入prevPageawait ctx.render(‘admin/focus/edit’,{list:result[0],prevPage:ctx.state.G.prevPage});3.在模板中把prevPage放到表单域```4.在提交的js中
2020-05-26 11:29:26
457
原创 利用mongodb修改一个带有图片的数据
注意:如果不修改图片,不能用img_url的格式,这样会使原来的图片删掉应该做个判断if(pic){ var json={ title,pic,url,sort,status,add_time } }else{ var json={ title,url,sort,status,add_time } } var result=await DB.update('focus
2020-05-26 11:20:28
155
原创 nodejs实现分页功能
find 方法修改db.collection(collectionName).find(json1,{fields:attr}).skip(slipNum).limit(pageSize);2.封装 count 方法var result=db.collection(collection).count(json);//nodejs封装mongodb知识result.then(data=>{ resolve(data); } ```3.数据结合 jqPaginator 实现分页ht.
2020-05-26 10:08:40
3029
原创 vsccode新建标签页不覆盖
设置搜索enablePreview,Workbench › Editor: Enable Preview取消选中即可
2020-05-25 16:22:41
316
原创 nodejs图片上传的模块
1.安装模块npm install --save koa-multer2.引入模块const multer = require(‘koa-multer’);3.配置模块var storage = multer.diskStorage({//文件保存路径destination: function (req, file, cb) {cb(null, ‘public/uploads/’) //注意路径必须存在,这里写服务器项目上的目录},//修改文件名称filename: function
2020-05-25 14:10:14
231
原创 js函数形参和实参数量可以不一致
定义一个形参有多个的函数,并且定义传入不同数量的实参时,其中的db.collection(collectionName).find(){}方法中的attr,skipNum和pageSize分别指的是什么find(collectionName,json1,json2,json3){ if(arguments.length==2){ var attr={}; var skipNum=0; var pageSize=0;
2020-05-25 11:09:13
1818
原创 mongodb数据库数据的导入与导出
在 Mongodb 中我们使用 mongodump 命令来备份 MongoDB 数据。该命令可以导出所有数据 到指定目录中。mongodump 命令可以通过参数指定导出的数据量级转存的服务器。使用 mongorestore 命令来恢复备份的数据。 导出: mongodump -h dbhost -d dbname -o dbdirectory 导入:mongorestore -h dbhost -d dbname path...
2020-05-24 18:28:38
230
原创 跨域以及解决跨域的方案cors
www.taobao.com====>www.jingdong.com这种操作存在跨域利用fetch(‘https://www.baidu.com/’)在浏览器console中可以检测
2020-05-24 18:27:41
181
原创 前端根据条件选中下拉框选中目标
<selectname="pid"id="pid"> <optionvalue="0">--顶级分类--</option> {{eacharticlecate}} <optionvalue="{{@$value._id}}"{{ifeditList.pid==$value._id}}selected{{/if}}>--{{$valu...
2020-05-24 17:26:09
428
原创 art-template
<optionvalue="{{@$value._id}}">--{{$value.title}}--</option>这里需要加一个@符号,不然显示多一个引号
2020-05-24 16:54:10
136
原创 koa+nodejs项目常用的模块
“dependencies”: {“art-template”: “^4.12.2”,“koa”: “^2.5.0”,“koa-art-template”: “^1.1.1”,“koa-bodyparser”: “^4.2.0”,“koa-jsonp”: “^2.0.2”,“koa-router”: “^7.4.0”,“koa-session”: “^5.8.1”,“koa-static”: “^4.0.2”,“md5”: “^2.2.1”,“mongodb”: “^3.0.4”,“s
2020-05-24 08:30:07
189
原创 koa中使用管道格式化日期
格式化日期插件var sd = require('silly-datetime');自定义管道方法 //配置 koa-art-template 模板引擎render(app, { root: path.join(__dirname, 'views'), extname: '.html', debug: process.env.NODE_ENV !== 'production', dateFormat:dateFormat=function(value){return sd.fo.
2020-05-23 18:15:29
483
原创 在html文件中nodejs语言定义一个if语句
<li {{if G.url[1]=='manager'}} class="active open"{{/if}}>这里的{{if}}{{/if}}中间的部分就是满足条件时所做的操作
2020-05-23 17:03:58
936
原创 vsc如何打印
用户代码片段搜js{“Print to console”: {“prefix”: “cl”,“body”: [“console.log(’$1’);”,],“description”: “Log output to console”}}
2020-05-23 09:22:55
443
原创 koa实现验证码功能
const captcha = svgCaptcha.create( { size:6, fontSize: 50, width: 100, height:40, background:"#cc9966" }); ctx.session.code=captcha.text; ctx.response.type = 'image/svg+xml'; ctx.body=captcha.data;
2020-05-23 09:21:49
824
1
原创 nodejs连接mongodb数据库
const MongoClient = require('mongodb').MongoClient;const url = 'mongodb://localhost:27017'; // const url = 'mongodb://admin:123456@localhost:27017/'; 有密码连接方式 const dbName = 'itying'; const client = new MongoClient(url,{ useUnifiedTopology: true }); c
2020-05-20 16:26:06
158
原创 如何用nginx在linux上部署项目
1.将项目打包在项目的根目录输入命令ng build -prod;会在根目录下生成一个dist文件夹,就是打包的文件2.安装nginx(如果linux服务器上有则跳过)自行安装即可3.将打包文件复制到linux的/usr/local/ngWeb下百度搜xftp,下载后打开软件输入连接的机器ip,用户名和密码,直接复制到相关目录下4.配置nginx,在conf/nginx.conf目录里面配置#user nobody;worker_processes 1;#error_log
2020-05-18 14:14:39
1079
原创 Mongodb笔记
(https://www.bilibili.com/video/BV1sE411F7rK?from=search&seid=2507828140046924853)1.mongdb储存方式
2020-05-18 14:01:41
182
原创 nodejs笔记
NodeJS实现高并发的原理1.Nodejs的诞生为了解决web服务器的高并发性能问题2.单线程的好处业务1的计算1刚调用完,在调用I/O请求时马上调用业务2的计算1,CPU的利用率永远百分百,不在创建销毁线程,缺点:一个用户线程崩溃,其他人整个服务崩溃3.非阻塞I/O机制传统的单线程,I/O阻塞代码执行,但nodejs使用非阻塞I/O使得线程永远在执行计算操作,cpu利用率永远是100%4.事件驱动模型应用层:即node.js的模块,如fs,http等v8引擎层: 解析JavaScr
2020-05-09 14:11:13
329
1
原创 slice和splice的区别
slice(start,end)是从一个数组中截取一个新数组,不会改变原数组,下标start包含,end不包含splice(start,deleteCount)表示从start删除,删除deleteCount个元素,原数组长度会改变,但返回的并不是原数组而是删除的元素组成的一个新数组,如果deleteCount为0,则返回一个空数组...
2020-05-07 15:18:47
168
原创 如何在前端同一位置显示不同样式
<ng-container*ngIf="!editCache[item.key].edit;elsesaveTpl"></ng-container><ng-template#saveTpl></ng-template>
2020-05-07 11:31:54
378
原创 上传图片并从后台返回一个图片字符串,在前台显示
<inputtype="file"value="上传图片"ng2FileSelect[uploader]="uploader"(change)="addSmallImg($event.target.files)"class="form-control"id="imageFile"name="...
2020-04-27 10:22:44
766
原创 如何将字符串数组转换成“,”隔开的字符串
this.specValueIdList = ''; for (var i = 0; i < data.length; i++) { if (i == data.length - 1) { this.specValueIdList = this.specValueIdList + data[i].specValueId; } e...
2020-04-22 16:02:25
955
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人