自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 网站

nginx下载 https://nginx.org/en/download.htmllodash中文网: https://www.lodashjs.com/css代码生成器: enjoycss.com

2020-06-11 10:42:49 1434

原创 安装了git,但是vscode依旧显示未安装

是因为未配置路径要在设置中搜索git.path:…\bin\git.exe(注意双反斜杠)

2020-06-27 10:32:11 2391

原创 Vue问题

出现拼写错误是因为打开了eslint拼写检查,设置搜索vetur-validation-template改为false就行

2020-06-12 12:48:02 152

原创 单页面应用

https://www.cnblogs.com/daijiabao/p/10933131.html

2020-06-08 12:37:10 171

原创 javascript中apply、call和bind的区别

cnblogs.com/cosiray/p/4512969.html

2020-06-08 12:22:17 112

原创 localstorage和sessionstorage的区别

一样都是用来存储客户端临时信息的对象。1.生命周期localstorage:除非手动删除,否则一直存在sessionstorage:关闭窗口或标签页即关闭2。数据共享localstorage:同源共享sessionstorage:同源不共享...

2020-06-08 11:41:05 74

原创 css行间属性

vertical-align—设置元素垂直对齐方式(middle,baseline,bottom,top)line-height—设置行间的距离

2020-06-08 09:44:16 241

原创 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 99

原创 css样式权重

!important Infinity行内样式 1000id 100class、属性、伪类元素 10伪元素、标签 1通配符 0

2020-06-08 09:25:06 159

原创 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 489

原创 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 120

原创 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 757 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 395

原创 利用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 125

原创 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 2924

原创 vsccode新建标签页不覆盖

设置搜索enablePreview,Workbench › Editor: Enable Preview取消选中即可

2020-05-25 16:22:41 255

原创 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 177

原创 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 1729

原创 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 172

原创 跨域以及解决跨域的方案cors

www.taobao.com====>www.jingdong.com这种操作存在跨域利用fetch(‘https://www.baidu.com/’)在浏览器console中可以检测

2020-05-24 18:27:41 151

原创 nodejs在本页获取上一页的url地址

var preurl=ctx.request.headers['referer'];

2020-05-24 18:02:23 369

原创 前端根据条件选中下拉框选中目标

<selectname="pid"id="pid"> <optionvalue="0">--顶级分类--</option> {{eacharticlecate}} <optionvalue="{{@$value._id}}"{{ifeditList.pid==$value._id}}selected{{/if}}>--{{$valu...

2020-05-24 17:26:09 395

原创 art-template

<optionvalue="{{@$value._id}}">--{{$value.title}}--</option>这里需要加一个@符号,不然显示多一个引号

2020-05-24 16:54:10 94

原创 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 159

原创 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 407

原创 在html文件中nodejs语言定义一个if语句

<li {{if G.url[1]=='manager'}} class="active open"{{/if}}>这里的{{if}}{{/if}}中间的部分就是满足条件时所做的操作

2020-05-23 17:03:58 870

原创 vsc如何打印

用户代码片段搜js{“Print to console”: {“prefix”: “cl”,“body”: [“console.log(’$1’);”,],“description”: “Log output to console”}}

2020-05-23 09:22:55 394

原创 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 738 1

原创 koa常见问题

1.注意观察router.use的位置,如在路由的前面,需要加next(),否则中间件不会走下去

2020-05-22 11:05:23 255

原创 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 120

原创 单例模式

无论实例化多少次,构造方法只执行一次,比如数据库的连接操作采用单例就可以防止反复关闭打开

2020-05-20 16:01:14 59

原创 当页面之前的样式互相干扰

*{padding:0;margin:0;}

2020-05-19 09:11:58 301

原创 如何用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 1011

原创 Mongodb笔记

(https://www.bilibili.com/video/BV1sE411F7rK?from=search&seid=2507828140046924853)1.mongdb储存方式

2020-05-18 14:01:41 134

原创 模板字符串的优势

1 可以多行拼接2 可以在拼接中插入变量3 可以进行简单的运算4 可以互相嵌套5 简单,方便,整洁

2020-05-11 17:23:29 784

原创 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 260 1

原创 slice和splice的区别

slice(start,end)是从一个数组中截取一个新数组,不会改变原数组,下标start包含,end不包含splice(start,deleteCount)表示从start删除,删除deleteCount个元素,原数组长度会改变,但返回的并不是原数组而是删除的元素组成的一个新数组,如果deleteCount为0,则返回一个空数组...

2020-05-07 15:18:47 132

原创 如何在前端同一位置显示不同样式

<ng-container*ngIf="!editCache[item.key].edit;elsesaveTpl"></ng-container><ng-template#saveTpl></ng-template>

2020-05-07 11:31:54 321

原创 上传图片并从后台返回一个图片字符串,在前台显示

<inputtype="file"value="上传图片"ng2FileSelect[uploader]="uploader"(change)="addSmallImg($event.target.files)"class="form-control"id="imageFile"name="...

2020-04-27 10:22:44 719

原创 如何将字符串数组转换成“,”隔开的字符串

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 881

空空如也

空空如也

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

TA关注的人

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