自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 问答 (1)
  • 收藏
  • 关注

原创 面试官:你懂Axios吗?我:给你手撸一个

Axios 是一个非常流行的前端 HTTP 请求库,它可以方便地发起 HTTP 请求并处理响应结果。Axios 不仅支持基本的 GET、POST 等请求方式,还提供了丰富的配置项和拦截器机制,使得开发者可以对请求和响应进行全方位的控制和定制。在本文中,我们将通过手写 Axios 的方式来学习请求拦截器和响应拦截器的实现。具体来说,我们将会实现一个基于 XMLHttpRequest 对象的 Axios 类,并在其中添加请求拦截器和响应拦截器。

2023-03-09 08:30:00 519 1

原创 面试官-为什么v-if和v-for不能同时使用

先回怼,v-if和v-for可以同时使用!但是只是建议不要同时用!

2023-02-17 11:20:28 250

原创 Vue template 解析生成真实dom过程

vue的模版编译过程主要如下:template -> ast -> render函数 -> 虚拟DOM -> 真实DOM读取模板:Vue 会读取 HTML 模板并将其转换为字符串。解析模板:Vue 使用编译器将字符串模板转换为抽象语法树(AST),其中包含模板中的每个元素和它们的属性。生成 render 函数:Vue 使用抽象语法树生成 render 函数。

2023-02-15 10:01:00 10069

原创 面试官-你真的懂computed原理?(源码解读)

要理解 computed 的工作原理,只需要理解下面4个特性- 特性1:computed默认不执行(因为 lazy 的原因,在新建watcher实例的时候,会将 watcher.value 赋值为 undefined,而不会立马进行计算。- 特性2:取值的时候,computed里面的方法会被执行。

2022-12-28 11:04:21 14984 1

原创 Vue报错:Avoid using non-primitive value as key, use string/number value instead

报错的意思是 不要用对象或是数组作为key,用string或value作为key。意思是:避免使用非基本值作为键,而是使用字符串/数字值。

2022-10-17 15:36:13 7700

原创 解决GitHub打不开(FastGithub,支持MAC)

最近在想在github上查阅框架源码,发现所有github相关网址都打不开,其实之前也有过,但是直接将更换为。而且同时支持win, linux, mac,使用很方便。下面简单介绍一下其用法。

2022-09-29 14:12:05 10243 4

原创 产品:我想要遮罩层下也能进行事件点击

pointer-events属性本身有很多取值,但只有none和auto可以用在浏览器上,其他都只能应用在SVG上。取值auto:与pointer-events属性未指定时的表现效果相同(即将元素恢复成为鼠标事件的target)这里不要忘了给内层添加auto属性,否则被外层包裹的所有内层无法成为鼠标事件的target了。取值none:元素永远不会成为鼠标事件的target。

2022-09-29 11:50:37 281

原创 大厂面试必备 - async/await 详解

async/await语法糖可以让异步代码变得更清晰,可读性更高,所以快快卷起来吧。Generator有兴趣的可以了解一下。

2022-09-15 18:02:21 457

原创 【小程序】滚动到指定位置,支付宝小程序滚动位置不准确

今天迁移支付宝小程序发现支付宝的API不完善,目前小程序滚动只能使用pageScrollTo,而支付宝小程序滚动位置只能在选择器和滚动目标位置二选一。

2022-09-15 18:00:28 969

原创 css 拉伸 resize —— 实现可拉伸的div(含限制拉伸的尺寸)

css 拉伸 resize —— 实现可拉伸的div(含限制拉伸的尺寸)

2022-09-06 18:57:28 1945

原创 js 删除两个数组中id相同的对象

js 删除两个数组中id相同的对象

2022-09-06 14:26:59 721

原创 小程序生命周期

小程序生命周期

2022-09-06 14:15:51 20598

原创 Taro中的生命周期(Taro3.0)

Taro中的生命周期

2022-09-06 10:36:01 2632

原创 【原生】js怎么判断数组是否包含另一个数组

js怎么判断数组是否包含另一个数组

2022-08-23 18:31:33 325

原创 React中10种Hook的使用介绍

可以用来优化子组件的渲染问题,或者监听子组件状态变化来处理事件,这一点在以前是很难做到的,因为shouldComponentUpdate里能监听到是否变化,但没法控制其他的外部方法,只能返回true和false,而componentDidUpdate只能在更新后执行,所以想在渲染之前做些事情就不好搞了。下面我们仔细看看具体的优化逻辑。是直接定义了一个方法,这也就导致只要是父组件重新渲染(状态或者props更新)就会导致这里声明出一个新的方法,新的方法和旧的方法尽管长的一样,但是依旧是两个不同的对象,...

2022-07-28 15:40:14 1633

原创 element ui 去除上传文件时的动画

element ui 去除上传文件时的动画

2022-06-14 14:49:16 732

转载 Git后悔药大全吐血整理 建议收藏

Git后悔药大全吐血整理 建议收藏

2022-06-14 11:36:54 5132

原创 ElementUI中el-upload上传图片组件上传成功函数传自定义参数

ElementUI中el-upload上传图片组件上传成功函数传自定义参数

2022-06-14 11:10:42 819

原创 详解JavaScript的空值合并运算符

今年ECMAScript 2020(ES2020)将发布!自 2015 年 ECMAScript 2015(ES6)发布以来,我们每年都对 JavaScript 语言进行更新。目录使用 JavaScript 空值合并运算符 使用实例 空值合并运算符与逻辑或(||) 浏览器支持 总结在ES2020中,我们获得了在其他语言中( 如 C# 和 PHP)早已可用的功能:空值合并运算符。我一直喜欢这个名字,因为每当我说这个名字时,都会觉得自己很聪明。空值合并运算符将会遍历列表,并返回第一个不是

2022-04-21 13:46:06 2067

原创 Vue+elementUI的动态表单的校验(根据条件动态切换校验格式)

背景开发过程中遇到了一个需求,根据用户选择的联系方式,动态改变输入框的检验条件,并且整个表单是可以增加的思考1.整个表单是可新增的,所以要遍历生成;2.联系方式(手机/座机)的切换,是要切换后边不同类型输入框还是只改变校验规则(本篇是动态改变校验规则)实现1.elementui的form表单实现校验的时候要给当前el-form-item加上prop属性,因为我们是遍历生成的表单,那我们的写法就要写成:重点在prop属性<template v-for="(k,ind.

2022-04-18 15:54:52 5995 1

原创 【element-ui】日期时间选择器如何控制某时段时间不能选择

实现的效果:1、使用参数picker-options建议使用参数time-arrow-control,用箭头进行选择(用鼠标滚轮操作稳定性很差)disabledDate :控制只能选择今天及以后的日期selectableRange :控制选择的时间段。如果是今天,则时间从此刻开始,否则从0时开始 <el-date-picker :disabled="isDisabled" :editable="false" :clearable = "tru.

2022-04-18 15:36:33 1905

原创 小程序图片缓存策略(不改代码更换OSS图片)

昨天,后端给我提了一个问题:他更换了CDN上的图片,但是他打开小程序来看,还是旧图片,他尝试过删除小程序,重新进,还是旧图片。我第一反应是:“你有没有清CDN缓存?“他说:”我在阿里云CDN控制台刷新缓存了,都两三天了,还是旧图片。”(后来我看过刷缓存记录,一天前刚刷的,他夸张了。。。)我说:“那不应该呀,CDN刷新缓存,5分钟就生效了。”当即拿出我的手机,进小程序看了一下,是新的图片。他赶紧拿出他的手机给我看,果然,不管试多少次,都是旧图片。我说:”你这个图片是文件名没改,请求地址

2022-04-01 09:51:55 3464 1

原创 浅谈localStorage

localStorage的优势1、localStorage拓展了cookie的4K限制2、localStorage会可以将第一次请求的数据直接存储到本地,这个相当于一个5M大小的针对于前端页面的数据库,相比于cookie可以节约带宽,但是这个却是只有在高版本的浏览器中才支持的localStorage的局限1、浏览器的大小不统一,并且在IE8以上的IE版本才支持localStorage这个属性2、目前所有的浏览器中都会把localStorage的值类型限定为string类型,这个在对我们日

2022-03-14 10:20:57 464

原创 【微信小程序】canvas生成分享图片海报模糊解决方法

利用展示(drawImage)和保存(canvasToTempFilePath)设置尺寸不同,保存设置正常图片像素的大小一、制作正常页面显示海报,实际canvas画布生成二倍图隐藏,下载时缩小显示即可解决模糊问题。二倍海报图屏幕仅能展示一半。保存图为750*940,实际canvas大小应为375px*470px ,此处二倍画图设置canvas大小为750px*940px代码如下:<!--index.wxml--><view class="container">

2022-03-01 16:33:53 3646

原创 【小程序canvas】createCanvasContext绘图不显示

绘图后一定要调用draw()方法!!CanvasContext.draw(boolean reserve, function callback) | 微信开放文档CanvasContext.draw(boolean reserve, function callback)将之前在绘图上下文中的描述(路径、变形、样式)画到 canvas 中。...

2022-03-01 15:30:50 1141

原创 JavaScript 判断数组的方法总结

根据构造函数判断(妈妈)instanceof判断一个实例是否属于某构造函数let arr = []console.log(arr instanceof Array) // true复制代码缺点: instanceof 底层原理是检测构造函数的 prototype 属性是否出现在某个实例的原型链上,如果实例的原型链发生变化,则无法做出正确判断。let arr = []arr.__proto__ = function() {}console.log(arr instanceof

2022-03-01 15:22:22 205

原创 前端转义字符

转义字符 表示字符 & amp; & & nbsp; 空格 & lt; < & gt; > & copy; © 注:为避免转义字符被编辑器转义,&符号后增加一个空格符

2022-02-24 17:54:32 314

原创 js实现md5加密(支持中文)

function md5(a) { function b(a, b) { return a << b | a >>> 32 - b } function c(a, b) { var c, d, e, f, g; return e = 2147483648 & a, f = 2147483648 & b, c = 1073741824 &am.

2022-02-17 11:07:44 4932 1

原创 微信小程序 wx.getUserProfile 不弹出授权框

// 登陆方法 login: function () { // 获取用户的信息 wx.getUserProfile({ desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写 success: (res) => { console.log(res) this.setData({ userInfo: res.userInfo, }) ...

2022-02-16 11:27:59 6486

原创 【恶补git】merge和rebase的区别

merge和rebase的区别 采用merge和rebase后,git log的区别,merge命令不会保留merge的分支的commit: 处理冲突的方式: (一股脑)使用merge命令合并分支,解决完冲突,执行git add .和git commit -m'fix conflict'。这个时候会产生一个commit。 (交互式)使用rebase命令合并分支,解决完冲突,执行git add .和git rebase --continue,不会产生额外的commit。这样的好处

2021-12-21 11:45:51 174

原创 微信小程序订阅消息报错 requestSubscribeMessage:fail can only be invoked by user TAP gesture.

遇到该问题场景: 项目中不同位置增加订阅消息,都是同样的写法,其实有一处是在订单退款的位置,尝试多次一直报错requestSubscribeMessage:fail can only be invoked by user TAP gesture. 只有偶尔会弹出申请订阅弹框,真是令吾百思不得其解在小程序社区里找了好久,找到一个官方的说法 说是需要点击动作,不支持在回调中使用,划重点不支持在回调中使用!!!(这里需要说一下 亲测wx.request() 的回调里调用是生效的)查看项目代码发现写在在wx

2021-12-14 11:21:17 3015 1

转载 微信拖拽盒子movable-view点击问题

<movable-area > <movable-view > <view bindtap="audioPlay"> 111 </view> </movable-area > </movable-view >这样写是不过用的,尝试了很多种方法,z-index,catchtap,等等方法,后来经过仔细分析,这个盒子现在是拖拽..

2021-12-14 10:11:23 375

原创 Prettier 上手和配置详情(建议ctrl+f搜索)

Prettier -- 专注于检查并自动更正代码风格1.'ESLint' 主要解决了两类问题,代码质量和风格问题这两个问题,但是在代码风格解决上如果每次人为去控制书写其实是一件痛苦的事,因此希望有一套自动化工具,帮我们检测代码是否规范,如果不规范,则自动能够帮我们按照既定规范格式化2.'Prettier' 声称自己是一个有主见的代码格式化工具 (opinionated code formatter),'Prettier '认为格式很重要,不需要再思考究竟是用 'single quote'.

2021-11-25 11:41:41 865 1

原创 JS四种数据类型判断方法

1. typeoftypeof是一个运算符,其有两种使用方式:(1)typeof(表达式);(2)typeof 变量名;返回值是一个字符串,用来说明变量的数据类型;所以可以用此来判断number,string,object,boolean,function,undefined,symbol这七种类型,每种情况返回的内容如下表所示类型 结果 String 'string' Number 'number' Boolean 'boolean' Un...

2021-11-22 11:00:26 588

原创 JS常用数组方法和属性

常用属性 Array.length:返回数组的大小 常用方法 Array.pop():删除并返回数组的最后一个元素 Array.push():向数组的结尾添加元素 Array.shift():将元素移除数组 Array.unshift():向数组头部添加元素 Array.join():将数组元素连接起来以构成一个字符串 Array.concat():连接数组 Array.reverse():将数组进行反转 Array.so

2021-11-19 10:17:25 656 3

原创 git常见命令(强commit强push)

# 添加所有文件到暂存区git add .# 拉取代码git clone 代码地址# 提交代码 git commit -m ‘注释’# 拉取代码到工作区git pull [remote] [branch]# 将本地仓库代码推送到远程git push [remote] [branch]# 切换分支git branch [branch-name]# 新建一个分支,并切换到该分支 git checkout -b [branch]# 可以用于vue的严谨模式,代码不能提交.

2021-11-16 11:07:40 3438

原创 git配置(SSH)

配置1、点击 git bash ,输入 ssh-keygen,三下回车,在你的 C:\Users\用户名.ssh 的路径下生成一个公钥的私钥2、打开公钥,复制其中的内容,打开git,在设置中输入复制的公钥如下图3、title一般会自动生成原理为了在不同平台/网络主机之间的通信安全, 很多时候我们都要通过ssh进行认证. ssh认证方式主要有2种:① 基于口令的安全认证: 每次登录的时候都要输入用户名和密码, 由于要在网络上传输密码, 可能存在中间人攻击的风险;② 基于密钥.

2021-11-16 11:00:21 2024 1

原创 【bug记录】小程序font-weight加粗失效

font-weight 加粗属性使用bold,600参数安卓部分机型无效

2021-11-15 16:27:49 1399

原创 深度解析闭包

闭包是一个可以访问外部作用域中变量的内部函数。这些被引用的变量直到闭包被销毁时才会被销毁。在本质上是函数内部和函数外部链接的桥梁。不会触发垃圾回收机制。闭包属于一种特殊的作用域,称为静态作用域。它的定义可以理解为: 父函数被销毁的情况下,返回出的子函数的[[scope]]中仍然保留着父级的单变量对象和作用域链,因此可以继续访问到父级的变量对象,这样的函数称为闭包。 闭包会产生一个很经典的问题: 多个子函数的[[scope]]都是同时指向父级,是完全共享的。因此当父级的变 量对象被修改时,所有子函数都受到

2021-05-31 16:09:11 403

原创 【bug记录】移动端使用scrollTop失效并一直为0(移动端 手机 真机)

使用scrollTop失效并一直为0(移动端 手机 真机)问题今天在浏览器的仿真界面中,scrollTop 数值正常,可以正常显示。但是在真机上面 scrollTop的值一直为 0 不发生变化。(表现状态为到达页头部锚点失效)解决html与 body 的 height 不要设置为 100%。设置为 min-height如果不是必须的可以删除。body { width: 100%; min-height: 100vh; }把原来的 定义的 doc...

2021-05-24 18:18:51 996

空空如也

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

TA关注的人

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