自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 前端高频面试--查缺补漏篇

四次挥手之所以是四次,是因为在TCP中数据的传输是双向的,每一方都需要单独关闭连接,而且可能还存在未传输完的数据段和对方的ACK报文,因此需要四次握手来确保双方的连接被正确关闭。,通过盗用用户的身份信息发起请求。诱导用户跳转到新页面,如果目标站点只使用cookie,并且kookie是允许跨域的,此时就能拿到用户的cookie,来模拟用户进行操作。客户端->服务端,回复ACK响应确认,此时客户端处于TIME_WAIT状态,需要经过一段时间确保服务器收到自己的应答报文后,才会进入CLOSED状态。

2024-03-03 21:30:14 1145

原创 前端高频面试题--性能篇

View 传送指令到 Controller,Controller 完成业务逻辑后,要求 Model 改变状态,将新的数据发送到 View,用户得到反馈。原来和现在都有则进行比较,如果为文本结点就替换值,为静态资源不处理,都为正常结点的时候就直接替换结点。采用双向数据绑定,View的变动,自动反映在 ViewModel,反之亦然。诱导用户跳转到新页面,如果目标站点只使用cookie,并且kookie是允许跨域的,此时就能拿到用户的cookie,来模拟用户进行操作。1. MVC数据是单向的,MVVM是双向的。

2024-02-28 23:00:49 355

原创 Vue/React 前端高频面试

挂载阶段(beforeCreate,created,beforeMounted,mounted)、更新阶段(beforeUpdate,updated)、销毁阶段(beforeDestroy,destroyed)v-if性能不及v-show。例如绑定数组的索引index,一旦数组内元素进行增删,后续节点的绑定的key也会发生变化,导致diff进行多余的更新操作。2. keep-alive有三个属性,include-匹配的组件缓存,exclude-排除匹配的组件其他都缓存,max-最多能缓存的组件数。

2024-02-27 23:09:41 1471

原创 JS前端高频面试

(Symbol是一个函数,会返回一个Symbol类型的值,每个Symbol函数返回的都是唯一的,可以作为对象的key。那么如果想要在函数a外面访问到函数a里面的变量,这可以将函数b return出去,所以我们是为了利用到闭包函数才将它return出去,这就造就了闭包就是和return关联在一起的误区。3. 需要注意的是,在map和forEach里面终止循环只能通过try catch,return是没用的,如果有需要通过判断某个条件return终止的情况,可以使用some。这个一层一层的关系就叫做作用域链。

2024-02-21 23:24:47 1111

原创 HTML + CSS 高频面试题

三列都设置float: left。再给左边元素margin-left: -100%,右边元素margin-left: 负数元素宽度,再利用相对定位定位到两边。简单来说BFC是页面中的一个隔离的独立容器,让空间里的子元素不会影响到外面的元素布局。CSS盒模型本质是一个盒子,封装周围的HTML元素,包括margin,border,padding,和content。浮动会脱离文档流,当父元素不设置高度的时候,需要子元素撑开,而子元素浮动就会导致父元素高度塌陷的问题。共有五个单位,px,rem,em,vw,vh。

2024-02-21 17:05:03 678

原创 uniapp富文本文字长按选中(用于复制,兼容H5、APP、小程序三端)

改造后:(由于uniapp rich-text ios无法实现复制功能,故加上:user-select="selectable"兼容ios)1. 查看u-parse源码发现小程序走到以下逻辑:(没有传入selectable属性,需要将selectable传入trees组件)2. 进入trees组件,找到富文本展示逻辑,发现使用uni-app的rich-text,支持selectable属性。

2024-02-18 10:38:40 2192

原创 uniapp复制(解决uni.setClipboardData某些机型h5不支持)

【代码】uniapp复制(uni.setClipboardData某些机型h5不支持)

2024-02-17 12:15:42 495

原创 JS获取url后的参数

【代码】JS获取url后的参数。

2024-01-22 10:58:17 440

原创 js根据数组对象中的某个值去重

利用对象key-value进行去重。

2023-12-13 11:07:04 743

原创 uni-app获取response header响应头(h5/app/小程序三端)

【代码】uni-app获取response header响应头(h5/app/小程序三端)

2023-12-12 15:43:38 2329 1

原创 前端Aes加密、解密(crypto加密解密,前后端分离,AES加密解密)

【代码】前端Aes加密、解密(crypto加密解密,前后端分离,AES加密解密)

2023-12-11 14:59:25 1070

原创 JSON.parse转义报错

可能存在的原因:json字符串里面存在不可见的空白字符。解决:使用正则将不可见的unicode区间字符剔除出去。

2023-12-11 14:42:59 999

原创 antd+全屏的坑(全屏下a-modal/下拉框等不展示)

方案一 :改变挂载对象。挂到根节点上:document.documentElement,再使用定位fixed目标元素,改变z-index。(全屏的还是根节点,全屏时给跟节点加class,再进行fixed)。方案二:全屏的时候给顶级元素加上一个class,写一份存在这个class下的样式去display:none需要隐藏的元素,关闭全屏时去掉这个class即可。原因:position:fixed进行相对于视口(viewport)的定位,且元素的位置在屏幕滚动时不会改变。(这个方式比较简单粗暴)

2023-10-30 19:59:35 1646

原创 浏览器全屏和退出全屏

【代码】浏览器全屏和退出全屏。

2023-10-30 19:44:57 169

原创 CSS 斜条纹进度条

【代码】CSS 斜条纹进度条。

2023-09-09 17:18:45 1359

原创 css画一条渐变的虚线

【代码】css画一条渐变的虚线。

2023-09-09 17:07:25 1658

原创 富文本iframe标签替换为video

新建video.js文件。

2023-07-27 16:00:40 658

原创 姓名/手机号 脱敏操作

【代码】姓名/手机号 脱敏操作。

2023-07-07 12:08:17 188

原创 dps生成骨架屏

5. 运行 dps start 即可在filepath设置的文件下生成html文件。injectSelector: 'body' // 生成的骨架屏插入页面的节点。filepath: 生成的文件名(要先创建一个同名的文件)2. 初始化生成dps.config.js文件。3. 配置dps.config.js文件。url:必须要是外网可访问的链接。

2023-07-06 15:58:59 136

原创 umijs/max使用微前端(子应用配置)

1. 写子应用的id并且规定子应用打开的端口【package.json文件】其中我在package.json中配置的子应用id为:passport。3. 查看是否配置成功:访问 url+子应用ID 查看是否成功。,可以一键启用 Qiankun 微前端开发模式。若以上链接可访问成功说明配置完成。

2023-06-25 11:49:08 1630

原创 umi打包页面打开空白问题

空白问题解决方案:config.ts打包配置。扩展:根据环境打包配置。

2023-06-25 11:39:49 1881

原创 React + antd 树Tree实现树节点的增删改(自定义树节点插槽)

示例:实现鼠标悬浮展示按钮元素原理::hover结合display: none。默认为display: none,:hover时修改display的值即可。

2023-06-22 15:41:29 2867 5

原创 css悬浮显示元素

hover和display:none。,默认隐藏元素,hover时展示。

2023-06-22 15:34:06 355

原创 react样式穿透

【代码】react样式穿透。

2023-06-22 15:28:11 437

原创 umijs项目插件开发流程

目录结构创建plugins文件夹插件引入配置文件中(.umirc.ts或config/config.ts)配置插件参数配置的参数是插件文件中describe定义好的。

2023-06-22 15:27:50 317

原创 React andDesign Input赋值defaultValue不生效

react中使用antDesign没有双向绑定,Input组件需要配合使用defaultValue来模拟数据反选操作。直接使用发现并未生效。解决方式:给input增加key值,保证唯一。

2023-06-15 17:55:55 513

原创 vue3 ref和reactive区别

reactive定义复杂的数据类型的数据,ref推荐定义基本数据类型。1. ref必须通过.value读取/修改值,reactive不需要2. reactive第一个接收参数必须是一个对象,ref可以为任意类型使用

2023-05-06 16:47:33 256 1

原创 js获取元素距离窗口位置

踩坑:使用offsetTop。offsetTop返回元素的上外缘距离最近采用定位父元素内壁的距离,如果父元素中没有采用定位的,则是获取上外边缘距离文档内壁的距离。返回:元素的大小及其相对于视口的位置:left, top, right, bottom, x, y, width, height。

2023-04-22 18:03:44 935

原创 vue3使用ref(script: setup+ts)

在vue2中想要调用子组件里的方法直接使用this.$ref.OrderListRef.getList()这种方式即可,在vue3中有几个点需要注意:

2023-04-22 16:56:45 225

原创 js查找当前滚动元素

js查找当前滚动元素信息

2023-04-22 10:59:43 1191

原创 vue3+vite运行报错记录:error when starting dev server

vue3+vite运行报错:error when starting dev server:TypeError: Cannot read properties of undefined (reading 'options')

2023-04-21 16:45:55 5094

原创 vuepress实现侧边菜单展开收起

目标:vuepress实现侧边栏只展开当前菜单,其他菜单折叠的效果。

2023-03-29 11:49:33 1549

原创 全屏及踩坑

解决方案二:改变挂载对象:挂到根节点上:document.documentElement,再使用定位fixed目标元素,改变z-index。原因:position:fixed进行相对于视口(viewport)的定位,且元素的位置在屏幕滚动时不会改变。全屏状态下,蚂蚁金服包含下拉框组件的下拉框不展示(包括时间选择,选择下拉框等)原因:下拉框是往body里面插入的,全屏的元素盖住了下拉框。原因:在没有全屏的状态下触发退出全屏的操作。解决:退出全屏时,判断一下当前的全屏状态。

2023-03-28 18:20:54 870

原创 重新认识作用域,什么是闭包

了;动态作用域关注在何处调用,

2023-03-16 15:20:59 260

原创 图片拖拽/放大/缩小并获取图片偏移量合缩放比(学习自用)

功能简介:在矩形框内拖拽图片到合适位置(图片可超过自身宽度的一半),并可对图片进行放大缩小操作。获取到图片相对于矩形框的位置及图片缩放比例。效果图完整代码DragImg.vue文件<template> <div> <div class="box margin-b15"> <img class="avatar" v-show="imageUrl" :src="imageUrl" draggable="false" /

2023-03-13 16:30:44 400

原创 getBoundingClientRect() 获取元素的大小及其相对于可视区域的位置

getBoundingClientRect()可获取元素的大小及其相对于可视区域的位置(不包含文档卷起的部分)

2023-03-12 14:47:02 480

原创 前端验证码之-滑动验证码

给控件设置一个原始背景色(即解锁前背景颜色),在上面覆盖一层绿色背景色区域(相对于原始背景定位),通过监听鼠标偏移量left来不断的设置绿色区域的宽度,当没有滚动到最大偏移量松开时回到初始位置,达到最大偏移量时表示校验通过(此时改变校验文案及图形)

2023-03-12 10:45:42 1935

原创 前端验证码之-数字运算验证码

完整代码记录:随机生成两个数组,进行加减乘操作。

2023-03-10 16:35:39 584 2

原创 fromCharCode()和charCodeAt() Unicode编码操作

fromCharCode()和charCodeAt() Unicode编码操作。

2023-03-10 15:28:26 417

原创 前端验证码之-常规验证码

随机生成四位数(随机数包括数字及大小写字母),使用canvas进行绘制,生成的随机数与填写数进行校验。

2023-03-10 15:17:13 660 1

空空如也

空空如也

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

TA关注的人

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