自定义博客皮肤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)
  • 收藏
  • 关注

原创 JavaScript扁平数组和树结构互相转换

【代码】JavaScript扁平数组和树结构互相转换。

2023-02-03 17:49:44 137

原创 个人微信、企业微信获取手机号、用户信息、unionid

所需资料:https://blog.csdn.net/qq_46007966/article/details/122669923?spm=1001.2014.3001.55011、个人微信获取手机号(必须微信认证) // 微信获取手机号(必须微信认证才可使用)<button open-type="getPhoneNumber" @getphonenumber="getMobileInfo">去授权</button>// 通过code、iv、encryptedD...

2022-01-24 17:48:41 7118 2

原创 个人微信、企业微信登录相关资源

1、 微信公众平台微信公众平台登录微信公众平台(使用小程序登录)——开发管理——开发设置( AppID(小程序ID)、AppSecret(小程序密钥) )登录微信公众平台(使用小程序登录)——设置——基本设置——微信认证(小程序获取 手机号)2、 微信开放平台微信开放平台参考文档https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/union-id.html登录微信开放平台—...

2022-01-24 16:28:57 924 1

原创 vue中本地文件下载

1.先把文件放在静态资源 public 中2.给标签添加点击事件<a id="download" href="javascript:void(0);" @click="download">下载模板</a>3.页面中引入axiosimport axios from 'axios';4.为了避免中文无法导出,将待导出文件名称改为英文 “ peoplecode.xls ” ,导出后的名称设置为中文名称 “ 员工工号.xls ”;download () {

2021-05-27 16:10:40 3060

原创 解决 electron-vue 运行出现 process is not defined 错误

npm run dev 运行项目 出现一下报错:解决:在 .electron-vue/webpack.renderer.config.js 和 .electron-vue/webpack.web.config.js 文件中找到HtmlWebpackPlugin代码段并更改为如下代码:new HtmlWebpackPlugin({ filename: 'index.html', template: path.resolve(__dirname, '../src/index..

2021-02-26 18:21:41 1572

原创 CSS自定义滚动条样式

效果图1:第一个 CSS:.list { max-height: 300px; overflow-y: auto; &::-webkit-scrollbar { /*滚动条整体样式*/ width : 10px; /*高宽分别对应横竖滚动条的尺寸*/ height: 1px; } &::-webkit-scrollbar-thumb { /*滚动条里面小方块*/

2021-02-24 15:18:39 301

原创 javascript中获取两个数组对象中的差集

数据:let arr = [ { id:1, name:'wade', title:'3' }, { id:2, name:'james', title:'23' }, { id:3, name:'rose', title:'1' }]let arr2 = [ { id:1,

2021-02-04 17:24:44 935 1

转载 vue中点击图片预览放大(支持旋转、翻转、缩放、上下切换、键盘操作)

1.首先是安装npm install v-viewer --save2.配置在main.js中引入记得引用它的CSS样式import Vue from 'Vue'import Viewer from 'v-viewer'import 'viewerjs/dist/viewer.css'进行Vue注册调用Vue.use(Viewer)Viewer.setDefaults({ Options: { 'inline': true, // 启用 in.

2020-12-18 17:06:00 1222

原创 JavaScript 数组常用方法整理

1.使用 Array 构造函数:let arr1 = new Array(); //创建一个空数组let arr2 = new Array(20); // 创建一个包含20项的数组let arr3 = new Array("wade","james"); // 创建一个包含2个字符串的数组2.使用数组字面量表示法:let arr4 = []; //创建一个空数组let arr5 = [20]; // 创建一个包含1项的数组let arr6 = ["wade","james"]; //

2020-11-25 14:56:00 523

原创 微信公众号跳转H5页面获取openid,再跳转小程序

需求:从微信公众号跳转到小程序,获取到公众号的openid1.openId是用户在当前公众号下的唯一标识(‘身份证’),就是说通过这个openId,就能区分在这个公众号下具体是哪个用户。2.获取openid登录微信公众平台后台获取公众号的AppID。 设置回调地址:开发>接口权限>网页服务>网页授权>修改 ...

2020-11-18 13:45:32 3919 6

原创 微信小程序页面分享(uni-app)

1.使用vue混入,创建一个js文件export default{ data(){ return { share:{ title:'wade', // 分享页面标题 path:'/pages/login/login', // 分享页面的路径 imageUrl:'', desc:'', cont

2020-10-14 11:00:08 1573 2

原创 fetch 请求封装函数

const TOKEN = 'xxx'/** * POST请求 */function post(url, json) { return new Promise((resolve, reject) => { fetch(url, { method: 'POST', body: JSON.stringify(json), headers: { .

2020-09-30 11:29:28 420

原创 AES加密、解密 ;MD5加密

AES加密、解密var CryptoJS = require("crypto-js");//解密方法function Decrypt(word) { var key = CryptoJS.enc.Utf8.parse("D6920D2EB71FAFFB"); var decrypt = CryptoJS.AES.decrypt(word, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 });

2020-09-30 10:48:45 444 1

原创 js 时间转换、 向上保留两位小数

1.毫秒转换时间formatDate(date) { var date = new Date(date); var YY = date.getFullYear() + "-"; var MM = (date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1) + "-"; var DD = date.getDate() &l

2020-09-29 18:04:05 2078

原创 js 对象拷贝 (深拷贝、浅拷贝)

浅拷贝:只是拷贝了基本类型的数据,而引用类型数据,复制后也是会发生引用,我们把这种拷贝叫做浅拷贝(浅复制)浅拷贝只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存。深拷贝:在堆中重新分配内存,并且把源对象所有属性都进行新建拷贝,以保证深拷贝的对象的引用图不包含任何原有对象或对象图上的任何对象,拷贝后的对象与原来的对象是完全隔离,互不影响;浅拷贝:1.直接赋值<script> var obj = { name:'wade', age:3

2020-06-16 02:17:59 2083

原创 display:inline-block间隙产生的原因以及解决方案

display:inline-block是让元素在一行显示,但是这些元素在html里面是上下行排列的,所以中间有换行符,于是并排显示就有了换行符带来的空隙。解决方案:1.将html标签要display:inline-block 的元素写在一行。缺点:代码可读性差。<style> .spa{ display: inline-block; width: 100px; height: 100px; background-colo

2020-06-15 10:27:33 631

原创 Flex 弹性盒子布局(容器、项目)

一:简介Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。任何一个容器都可以指定为 Flex 布局。采用 Flex 布局的元素,称为 Flex 容器(flex container),简称"容器"。它的所有子元素自动成为容器成员,称为 Flex 项目(flex item),简称"项目"。二:容器的属性1.flex-direction 属性决定主轴的方向(即项目的排列方向) row(默认值):主轴为水平方向,起点在左端。 .

2020-06-15 01:20:54 697

转载 javascript中的 闭包

js的作用域分两种,全局和局部,基于我们所熟悉的作用域链相关知识,我们知道在js作用域环境中访问变量的权利是由内向外的,内部作用域可以获得当前作用域下的变量并且可以获得当前包含当前作用域的外层作用域下的变量,反之则不能,也就是说在外层作用域下无法获取内层作用域下的变量,同样在不同的函数作用域中也是不能相互访问彼此变量的,那么我们想在一个函数内部也有限权访问另一个函数内部的变量该怎么办呢?闭包就是用来解决这一需求的,闭包的本质就是在一个函数内部创建另一个函数。我们首先知道闭包有3个特性:1.函数嵌套函

2020-06-05 15:00:24 169

原创 JavaScript 中实现继承的方式(es5、es6)

ES5 继承:父类: // 创建一个人的类function Person (name) { // 属性 this.name = name; // 方法 this.eat = function(){ console.log(this.name + '正在吃饭!'); }}// 原型方法Person.prototype.sing = function(song) { console.log(this.name + '正在唱:' + song);};1、原

2020-06-05 02:38:06 505

转载 vue中assets与static的区别

1、相同点: 文件夹中的资源在html中使用都是可以的。2、不同点:使用assets下面的资源,在js中使用的话,路径要经过webpack中的file-loader编译,路径不能直接写2.1 static :该目录下的文件是不会被wabpack处理的,它们会被直接复制到最终的打包目录下面(默认是 dist/static ),且必须使用绝对路径来引用这些文件。这是通过在 config.js 文件中的 build.assetsPublicPath 和 build.assetsSubDir

2020-06-02 11:41:02 483

原创 简单实现vue数据双向绑定的原理

vue实现数据双向绑定的原理:就是用 Object.defineproperty() 重新定义对象 设置属性值 (set方法)和 获取属性值(get方法)的操纵来实现的描述:Object.defineProperty()方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回此对象。语法:Object.defineProperty(obj, prop, descriptor)参数:obj:要定义属性的对象。prop:要定义或修改的属性的名称。descri..

2020-06-02 00:17:10 336

原创 vue-router 路由传参 params 和 query

一、params和query理解params方法传参的时候,要在路由后面加参数名占位;并且传参的时候,参数名要跟路由后面设置的参数名对应。/user/:uname 这个路由匹配/user/wade,/data/james 这里的 uname 叫 paramsquery方法,就没有这种限制,直接在跳转里面用就可以。/user?uname=wade /user?uname=james 这里的 uname 叫 query二、query和params的用法1.params:

2020-06-01 15:48:58 805

原创 JavaScript 数组reduce() 的用法

JS中 reduce() 的用法过去有很长一段时间,我一直很难理解reduce()这个方法的具体用法,平时也很少用到它。事实上,如果你能真正了解它的话,其实在很多地方我们都可以用得上,那么今天我们就来简单聊聊JS中 reduce() 的用法。一、语法arr.reduce(function(prev,cur,index,arr){...}, init);其中,arr表示原数组;prev表示上一次调用回调时的返回值,或者初始值 init;cur表示当前正在处理的数组元素;ind...

2020-05-29 21:34:20 266

原创 关于JavaScript正则表达式

正则表达式:用于匹配规律规则的表达式,正则表达式最初是科学家对人类神经系统的工作原理的早期研究,现在在编程语言中有广泛的应用。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式的作用:灵活性、逻辑性和功能性非常的强 可以迅速地用极简单的方式达到字符串的复杂控制 对于刚接触的人来说,比较晦涩难懂方括号表达

2020-05-29 21:22:01 194

原创 构造函数、原型链、原型对象、构造器的理解

一、构造函数、实例化对象构造函数模式的目的就是为了创建一个自定义类,并且创建这个类的实例。构造函数模式中拥有了类和实例的概念,并且实例和实例之间是相互独立的。构造函数就是一个普通的函数,创建方式和普通函数没有区别,不同的是构造函数习惯上首字母大写。另外就是调用方式的不同,普通函数是直接调用,而构造函数需要使用new关键字来调用。function后面的方法名Person就是一个构造函数,一般首字母大写,需要new实例化;new之后的对象就是实例化对象,此处的person1,person..

2020-05-29 20:10:07 365 1

空空如也

空空如也

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

TA关注的人

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