自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (2)
  • 收藏
  • 关注

转载 url 的正则表达式:path-to-regexp

概述:该工具库用来处理 url 中地址与参数,能够很方便得到我们想要的数据。js 中有 RegExp 方法做正则表达式校验,而 path-to-regexp 可以看成是 url 字符串的正则表达式。npm install path-to-regexpconst pathToRegexp = require('path-to-regexp');API 介绍1. pathToRegexp()作用:这里这个方法可以类比于 js 中new ExpReg('xxx')。..

2021-03-31 16:45:36 864

转载 JS 根据对象的某个属性排序

//定义一个比较器compare(propertyName) { return function(object1, object2) { var value1 = object1[propertyName] var value2 = object2[propertyName] if (value2 < value1) { return -1 } else if (value2 > value1) { return 1 } el...

2021-03-31 14:59:22 94

转载 js修改当前url所携带参数,不刷新当前页面

需求:JWT前后端分离,移动端H5首页通过url传递参数token,未登录时(app在url中未传递token参数),调取app原生登录回调得到token参数。问题:回调得到token之后,从其他页面跳回首页。由于首页在初始换时默认取的url中的token,此时跳转回首页时url中并没有token,token无法保存下来,决定看看有没有方法可以修改首页url的参数,在app原生登录返回时将token动态拼接在url中,并且不刷新页面。对于原生jsfunction changeURLParam(n

2021-03-31 10:52:47 1859

转载 Nginx和Apache和Tomcat的区别及优缺点

Nginx和Apache和Tomcat的区别及优缺点1、定义:1)ApacheApache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页,它是一个模块化的服务器,可以运行在几乎所有广泛使用的计算机平台上。其属于应用服务器。Apache支持模块多,性能稳定,Apache本身是静态解析,适合静态HTML、图片等,但可以通过扩展脚本、模块等支持动态页面等。缺点:配置相对复杂,自身不支持动态页面。优点:相对于Tomcat服务器来说处理静态文件是它的优势,速度快。

2021-03-30 17:37:52 197

转载 tomcat 与 nginx,apache的区别是什么?

https://www.zhihu.com/question/32212996

2021-03-30 17:36:31 59

转载 手摸手,带你封装一个vue component

项目地址:vue-countTo配套完整后台demo地址:vue-element-admin系类文章一:手摸手,带你用vue撸后台 系列一(基础篇)系类文章二:手摸手,带你用vue撸后台 系列二(登录权限篇)系类文章三:手摸手,带你用vue撸后台 系列三(实战篇)系类文章四:手摸手,带你用vue撸后台 系列四(vueAdmin 一个极简的后台基础模板)系类文章:手摸手,带你优雅的使用 icon为什么选择自己封装第三方库最近几个月我司把之前两三年的所有业务都用了 vue 重构了一遍,前台使

2021-03-30 17:16:56 158

转载 vuedraggable拖拽插件使用

文档地址:http://www.itxst.com/vue-draggable/tutorial.html引入方式(npm):npm i -S vuedraggable简单使用:<template> <div> <el-row> <el-col :span="12" class="col"> <span>A列</span>

2021-03-29 15:41:45 870

转载 Vue使用vue-draggable 插件在不同列表之间拖拽功能

今天分享一个vue项目中在不同列表拖拽设置选项的功能,这个功能也是在做项目中遇到的,先说下这个功能的要点(参考下图),有2个列表,左侧列表展示已选,右侧列表展示未选,通过拖拽进行设置,已选的选项不能超过4个,超过的话自动将拖拽之前的最后一项清除到右侧,且如果从已选往未选里拖的时候,右侧显示垃圾桶的提示(如图)。拖拽功能图片:垃圾桶显示图:首先讲讲vue-draggable的使用安装vue-draggable:npm install vuedraggable在使用插件的组件内引

2021-03-29 15:37:41 2273

转载 vue 对图片进行拖拽到另一个位置

1、拖动元素代码:使用html5原生拖拽属性,在需要拖拽的图片中添加draggable="true"属性,并使用v-on添加拖动事件2、被放置的区域事件代码:使用html5原生拖拽属性,在需要放置的区域使用v-on添加放置事件3、methods代码:...

2021-03-29 15:24:44 2153

转载 基于vue-element-template项目开发总结

vue-element-template是一个轻量级后台管理系统基础模板,他的爸爸是vue-element-adimin,vue-element-admin 是一个后台集成解决方案,它基于 vue 和 element。它使用了最新的前端技术栈,内置了 i18 国际化解决方案,动态路由,权限验证,提炼了典型的业务模型,提供了丰富的功能组件,实际项目开发还是使用template基础模板进行开发地址:基础模板地址:https://github.com/PanJiaChen/vue-admin-template

2021-03-29 09:56:35 380

转载 async和await

await后面接一个会return new promise的函数并执行它 await只能放在async函数里使用async和await获取成功的结果function 摇色子(){ return new Promise((resolve, reject)=>{ let sino = parseInt(Math.random() * 6 +1) setTimeout(()=>{ resolve(sino) ...

2021-03-25 10:57:02 77

转载 Node JS 使用 xml2js 解析 xml 数据格式

我最近在弄一个 docx文档的处理工具,docx 文档的数据储存方式其实就是 xml , 首先我直接找了轮子,毕竟 docx 文档的 xml 不是给正常人看的,现在好像比较强的是 xml2jsNPM 安装地址:https://www.npmjs.com/package/xml2jsGitHub:https://github.com/Leonidas-from-XIV/node-xml2js这个轮子使用起来还是比较舒服的,开头我还是先简单翻译一下文档npm 安装npm insta..

2021-03-24 11:27:30 6240 1

转载 Node.js中使用adm-zip npm模块创建和提取zip文件

Zip文件是常用的压缩文件格式。大多数开发人员最终使用tarball而不是zip文件。但在某些情况下,您需要使用zip文件,例如将函数上载到AWS Lambda。在本文中,我将演示如何用adm-zip npm模块创建和提取zip文件。创建一个Zip文件从 adm-zip 的 npm 模块中导出一个AdmZip类。AdmZip的实例对应于一个zip文件。如果想要创建一个新的 zip 文件,在调用new AdmZip()时不应带任何参数:const AdmZip = requ...

2021-03-24 08:43:17 3435

转载 漫画 | Linux之父:财务自由以后,我失眠了!

1999年,我持股的两家公司相继上市,受华尔街的热捧,股票当天涨了733%, 我这个程序员的财富飙到了2000万美元!财务自由了,我却失眠了!这一切是怎么发生的呢?故事得从我的外公说起, 他是一位统计学教授,有时候需要写点儿程序做统计。但是他很不喜欢在键盘上打字,所以总是把程序写到一张纸上,让不到十岁的我坐到他的膝盖上,把代码敲入计算机。我不知道那些统计学的公式有什么用处,但是对电脑产生了强烈的兴趣。我开始阅读电脑的手册,编写人生的第一个程序。我妹妹对这个程序非常感兴趣,让我做了

2021-03-22 10:02:06 203

转载 nodeJS-fs模块的基本使用

fs模块(系统内置模块 主要用来操作文件)注意: 基本上所有方法都有异步和同步,基本上同步的方法 都是在异步方法后面加上 Sync常见的文件的基本操作:前提: 要先引入fs模块 var fs = require('fs');01) 读取文件(内容) a) 异步读取 fs.readFile('要读取的文件的路径', function (err, data) { // 判断 如果有错 打印错误 ..

2021-03-19 17:30:44 568

转载 node内置全局变量之__dirname、__filename

在 Node.js 我们可以直接访问到 global 的属性,而不需要在应用中包含它。如果是node.js内置的全局变量,在项目中可以直接使用变量名,而不必要带上global前缀。如果是自己定义的global属性,为更好的标识,最好在定义的时候加上global前缀。一、__dirname__dirname表示当前执行脚本所在的目录。比如现在需要知道当前项目绝对路径,就可以使用__dirname;二、__filename__filename 表示当前正在执行的脚本的...

2021-03-19 16:48:43 1535

转载 node.js require 相对路径 or 绝对路径

node.js 加载其他模块时要使用require(路径) ,路过路径加载的一般都是文件模块,程序首先会加上.js扩展名尝试去搜索,如果找不到,就尝试用 .json 格式扩展名去搜索加载,还找不到,就加上扩展名 .node 去搜索加载.但是这里的路径也有些说道的!常见的格式:require('./lib/util');上面的加载路径是一个相对路径,程序会去所在目录上一层找到lib 文件目录,然后目录下找到 util.js 文件并加载.如何辩别相对/绝对路径,相对路径以 . 开始..

2021-03-19 10:50:18 2844

转载 express + multer 实现文件上传

express框架,实现文件上传主要用到了multer插件安装依赖:npm install --save multer开始编码:1、routers 文件夹下新建 upload.js 文件const express = require('express');const router = express.Router();const multer = require('multer');let upload = multer({ storage: multer.diskSto...

2021-03-18 17:25:08 348

转载 express文件上传中间件Multer详解

multer是express官方推荐的文件上传中间件,它是在busboy的基础上开发的。目前multer的最新版本为:~1.1.0。本文将详细介绍express文件上传中间件Multer的安装与使用等,有需要的朋友们可以参考借鉴,下面来一起看看吧。前言Express默认并不处理HTTP请求体中的数据,对于普通请求体(JSON、二进制、字符串)数据,可以使用body-parser中间件。而文件上传(multipart/form-data请求),可以基于请求流处理,也可以使用formidable模块或M

2021-03-18 17:13:33 1175

转载 vscode代码格式化

1. 安装 vue-beautify, Beautify是可以格式化你的文件。2. 安装中文显示和 vetur 区分文件显示, Vetur可以给你的文件上色,区分属性格式等。方便开发。3. 打开 setting.json 设置。文件 -》首选项-》设置,搜索vetur.format.defaultFormatterOptions4. 在setting.json 中配置如下{ // vscode默认启用了根据文件类型自动设置tabsize的...

2021-03-17 15:55:49 469

转载 vue: 防止按钮重复点击

vue: 防止按钮重复点击一、新建plugins.jsimport Vue from 'vue'// 在vue上挂载一个指量 preventReClickconst preventReClick = Vue.directive('preventReClick', { inserted: function (el, binding) { console.log(el.disabled) el.addEventListener('click', () =&g

2021-03-17 15:48:02 430

转载 jsonwebtoken和express-jwt的使用

jsonwebtoken和express-jwt——nodeJs下用户权限验证,token的生成与验证工具,踩坑记录~~~使用步骤:一、下载npm install jsonwebtoken --savenpm install express-jwt --save二、生成token和验证token在user.js文件中const jwt = require('jsonwebtoken');//秘钥var signkey = 'mes_qdhd_mobile';//生

2021-03-16 17:00:18 829

转载 bearer token_JWT的Token登录认证,你用过没?

1.JWT简介JSON Web Token (JWT)是一个开放标准(RFC 7519),它定义了一种紧凑的、自包含的方式,用于作为JSON对象在各方之间安全地传输信息。该信息可以被验证和信任,因为它是数字签名的。2 JSON Web Token的应用场景Authorization (授权) : 这是使用JWT的最常见场景。一旦用户登录,后续每个请求都将包含JWT,允许用户访问该令牌允许的路由、服务和资源。单点登录是现在广泛使用的JWT的一个特性,因为它的开销很小,并且可以轻松地跨域使用。.

2021-03-16 15:52:14 533

转载 【已解决】使用 jwt 报错:algorithms should be set

使用 jwt 报错:algorithms should be set:导致报错的语句(node_modules\[email protected]@express-jwt\lib\index.js:22):if (!options.algorithms) throw new Error('algorithms should be set')1原因是:2020.7.7日jwt更新之后,安装的express-jwt模块会默认为6.0.0版本,更新后的jwt需要在配置中加入algorithms属

2021-03-16 15:27:19 456

转载 Express使用express-validator

在Express中验证传入的数据。假设您有一个POST接口,它接受名称、电子邮件和年龄参数:const express = require('express')const app = express()app.use(express.json())app.post('/form', (req, res) => { const name = req.body.name const email = req.body.email const age = req.body

2021-03-15 15:20:14 1975

转载 使用crypto模块实现md5加密功能(解决中文加密前后端不一致的问题)

正常情况下使用md5加密var crypto = require('crypto');var md5Sign = function (data) { var md5 = crypto.createHash('md5').update(data).digest('hex'); return md5;}实际开发中经常需要前端nodejs调用后端java接口,使用上述方法会出现中文加密结果不同的情况,解决方法如下:var crypto = require('crypto');

2021-03-15 10:19:51 1652

转载 crypto

crypto模块的目的是为了提供通用的加密和哈希算法。用纯JavaScript代码实现这些功能不是不可能,但速度会非常慢。Nodejs用C/C++实现这些算法后,通过cypto这个模块暴露为JavaScript接口,这样用起来方便,运行速度也快。MD5和SHA1MD5是一种常用的哈希算法,用于给任意数据一个“签名”。这个签名通常用一个十六进制的字符串表示:const crypto = require('crypto');const hash = crypto.createHash('md5

2021-03-12 15:07:39 172

转载 node.js_crypto 模块

crypto 模块提供了加密功能,实现了包括对 OpenSSL 的哈希、HMAC、加密、解密、签名、以及验证功能的一整套封装。Hash 算法Hash 类是用于创建数据哈希值的工具类。查看 crypto 模块支持的 hash 函数:crypto.getHashes()[ 'RSA-MD4', 'RSA-MD5', 'RSA-MDC2', 'RSA-RIPEMD160', 'RSA-SHA1', 'RSA-SHA1-2', 'RSA-SHA224', 'RSA.

2021-03-12 15:06:25 594

转载 Nodejs 进阶:Express 常用中间件 body-parser 实现解析

本文摘录自《Nodejs学习笔记》,更多章节及更新,请访问github主页地址。欢迎加群交流,群号197339705。写在前面body-parser是非常常用的一个express中间件,作用是对post请求的请求体进行解析。使用非常简单,以下两行代码已经覆盖了大部分的使用场景。app.use(bodyParser.json());app.use(bodyParser.urlencoded({ extended: false }));本文从简单的例子出发,探究body-parse...

2021-03-11 16:45:45 364

转载 什么时候会发送options请求

1 偶然的相遇——options请求最近写的项目,应用里所有的ajax请求都发送了2遍。由于新项目,基础模块是新搭的,所以出现一些奇葩问题也是意料之中,啊终于第一次在chrome的devTools遇见了活的options请求。1.1 第1次请求这里首先发送了一次额外的options请求,在浏览器里看到请求request header 和 response header的信息如下:(1)预检请求头request header的关键字段:Request Header 作用 Ac

2021-03-11 14:01:02 586

转载 body-parse的简单使用

使用body-parser获取前端传送过来的数据 首先第一步引入const bodyParser = require('body-parser');//对body-parser进行配置app.use( bodyParser.urlencoded({extended: true}) )//设置完毕之后,会在req对象上面新增一个req.body的一个对象再来说说node后台对这两种请求格式的处理:首先是最新express版本4.7.2:4.7.2版本的express没有了bodyPars..

2021-03-10 16:26:17 1114

转载 watch监听路由变化详解

一、watch监听路由的方法通过watch监听,当路由发生变化的时候执行。方法一:watch:{ $router(to,from){ console.log(to.path) }}方法二:watch: { $route: { handler: function (val, oldVal){ console.log(val); }, // 深度观察监听 deep: true }},.

2021-03-10 14:43:19 17919

转载 Node.js中环境变量process.env的一些事详解

环境变量是操作系统运行环境的一些参数。在开发环境或者部署环境中都需要使用到。本文讲述了使用命令行临时对环境变量的查看、添加、修改和删除。和修改系统文件来永久设置环境变量的方法。Windows 设置环境变量临时(cmd)查看环境变量,添加环境变量,删除环境变量#node中常用的到的环境变量是NODE_ENV,首先查看是否存在set NODE_ENV#如果不存在则添加环境变量set NODE_ENV=production#环境变量追加值set 变量名=%变量名%;变量内容set

2021-03-10 10:46:48 460

转载 axios拦截器之axios.interceptors.request.use和axios.interceptors.response.use(附示例代码)

1.请求拦截器(在请求之前进行一些配置)axios.interceptors.request.use(function(config){ //比如是否需要设置 token config.headers.token='wwwwwsdsdf' return config})123452.响应了拦截器(在响应之后对数据进行一些处理)axios.interceptors.response.use(res=>{ let data=res.data //比...

2021-03-09 17:19:11 7763 1

转载 qs.stringify和JSON.stringify的使用和区别

qs可通过npm install qs命令进行安装,是一个npm仓库所管理的包。而qs.stringify()将对象 序列化成URL的形式,以&进行拼接。JSON是正常类型的JSON,请对比一下输出例如var a = {name:'hehe',age:10}; qs.stringify(a)// 'name=hehe&age=10'JSON.stringify(a)// '{"name":"hehe","age":10}'都是把对象的类型转换成另外一种类型.

2021-03-09 17:10:15 105

转载 axios与axios.create()的区别

参考原文:https://www.cnblogs.com/fsg6/p/13204365.htmlaxios.create()是添加了自定义配置的新的axios例如:用axios发送请求:axios({ method:'POST', url:'http://localhost:8000/login', data})用axios.create()创建一个新的axios发请求:cosnt requset = axios.create({ //基础路径 ...

2021-03-09 16:58:17 1741 1

转载 MySQL 8.0.20 安装教程图文详解(windows 64位)

一:mysql官网下载https://dev.mysql.com/downloads/file/?id=494993不用注册,直接下载就好二:解压缩原谅我技术渣,所有文件夹都翻过了,真的没找到mysql-installer在哪个文件夹内,真的不知道应该运行哪个文件(有大神知道欢迎指导)ok解压后的目录并没有的my.ini文件,那么自己配置。自行创建在安装根目录下添加的my.ini,写入基本配置: 1 2 3 4 5 ...

2021-03-05 15:42:58 119

转载 windows版mysql8.0安装详解(推荐阅读)

windows版mysql8.0安装详解准备去下载一个本地mysql服务器时,突然发现mysql从5.7瞬间升级为8.0了,那还等什么,直接下载下来玩玩先.下载地址:https://dev.mysql.com/downloads/mysql/下载完成后将其解压到自定义目录下,我所有的工具都保存在D:\tools,解压完成后会看见以下目录:随后,配置环境变量(我的电脑点右键,然后点属性,然后点击环境变量),步骤如下:此时,环境变量配置完成,接下来进行安装m...

2021-03-05 15:37:19 190

转载 可视化工具D3教程(推荐)

https://blog.csdn.net/qq_31052401/article/details/93786425(推荐)

2021-03-03 09:02:02 267

转载 一些基于 D3.js 的图表库

一些基于 D3.js 的图表库D3.js is a JavaScript library for manipulating documents based on data.D3 helps you bring data to life using HTML, SVG, and CSS.D3’s emphasis on web standards gives you the full capabilities of modern browsers without tying yourself to a

2021-03-03 08:59:42 740

symbian 视频播放源码

symbian的视频播放源码,有兴趣的可以下载。

2008-09-11

空空如也

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

TA关注的人

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