自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 常见的浏览器跨域解决方法

JSONP(JSON with Padding)是一种利用标签的src属性不受同源策略限制的特性来实现跨域数据请求的方法。JSONP通过在前端动态创建标签,并将请求的URL设置为需要跨域访问的API地址,来获取跨域数据。// 处理返回的JSON数据// 动态创建script标签var'script';;;});

2024-03-01 16:31:36 1518

原创 浅谈vue函数式组件

函数式组件是通过一个返回虚拟 DOM 对象的函数来定义的。这个函数接收props作为参数,并且必须返回一个有效的虚拟 DOM 结构。// 定义一个函数式组件// 基于 props 计算或渲染内容return (</div>// 或者使用 render 函数形式// 注册组件在这个例子中,是一个函数式组件,它接收一个props对象作为参数,并返回一个虚拟 DOM 结构。

2024-03-01 14:40:29 595

原创 浅谈vue的自定义指令

Vue 的自定义指令是一种强大的工具,允许你为 DOM 元素添加自定义行为。自定义指令可以通过 Vue 的 全局 API 或组件内的 选项来定义。下面是如何使用 Vue 的自定义指令的基本步骤:在模板中使用自定义指令在这个例子中,我们创建了一个名为 的自定义指令。当这个指令绑定到一个元素上时, 钩子函数会在元素被插入到 DOM 时被调用,使该元素自动获得焦点。扩展性:自定义指令允许你为 Vue 添加新的功能,这些功能在核心库中可能并不存在。通过自定义指令,你可以轻松地扩展 Vue 的功能,以

2024-03-01 14:20:54 637

原创 什么是虚拟DOM,有什么作用?有了解过diff算法吗?

在虚拟DOM中,当状态发生变化时,Diff算法被用来计算新旧虚拟DOM树之间的差异,并生成一个最小化的操作列表,这些操作将应用于真实的DOM树以实现更新。开发者通过操作这个JavaScript对象来描述视图层的状态,当这个状态发生变化时,虚拟DOM会计算出新的视图并与之前的视图进行比较,然后找出差异并应用到真实的DOM上。这样,真实的DOM只会更新必要的部分,从而减少了不必要的性能开销。:虚拟DOM基于差异计算,只更新需要改变的部分,而不是整个DOM树,这减少了不必要的DOM操作,提高了页面更新的效率。

2024-03-01 13:58:18 518

原创 浅谈Vue的数据响应式

Vue.js 的核心特性之一是它的响应式系统,这意味着当数据发生变化时,Vue 能够自动更新依赖这些数据的 DOM。这种能力使得开发者能够以声明式的方式构建用户界面,而不需要手动处理 DOM 更新。这就是 Vue 实现数据响应式的基本原理。需要注意的是,这个过程是 Vue 的内部实现,开发者通常不需要直接操作。开发者只需要关注如何声明式地绑定数据到模板,以及如何在数据变化时触发相应的逻辑即可。Vue 的响应式系统主要基于 Object.defineProperty() 方法来实现。

2024-03-01 13:50:28 452

原创 聊一聊TypeScript的相关知识点

类型注解允许你明确指定变量的类型。

2024-02-29 15:08:20 1536

原创 css常用选择器

【代码】css常用选择器。

2024-02-29 14:55:58 474

原创 浅谈ES6的新特性(结合代码对比ES5语法)

ES6中的let关键字提供了块级作用域,解决了var关键字导致的变量提升和重复声明问题。这使得代码的作用域更加清晰,减少了潜在的错误。

2024-02-22 09:51:36 345

原创 浅谈前后端数据加密的方法

在实际应用中,通常需要根据具体场景和需求选择合适的加密方法。同时,也需要注意密钥的安全管理和保护,以防止数据泄露和非法访问。

2024-02-22 09:42:50 830 1

原创 异步编程的几种实现方式

异步编程是一种编程模型,允许某些操作(通常是耗时的)在不阻塞主程序执行的情况下进行。这通常用于提高程序的响应性和效率,特别是在处理I/O操作(如网络请求或文件读写)时。

2024-02-20 16:21:01 451

原创 VUE3+TS+elementPlus项目基础搭建学习

完成以上步骤后,就成功搭建了一个使用 Vue 3, TypeScript 和 Element Plus 的项目,并创建了一个基础示例页面。在Vue项目中,TypeScript可以用于增强代码的类型安全性、提供自动补全和更好的重构工具。在你的项目中安装 Element Plus,这是一个为 Vue 3 设计的 UI 组件库。你可以根据项目的需求修改这个配置,比如调整目标版本、添加类型别名、配置路径别名等。在创建项目的过程中,CLI 会询问你一些问题来定制项目配置。这样,你就可以在Vue组件中通过。

2024-02-20 14:59:32 1547

原创 浅谈宏任务跟微任务的理解

在JavaScript的事件循环(Event Loop)中,任务被分为宏任务(MacroTask)和微任务(MicroTask)两种。这两种任务类型在事件循环中有不同的处理优先级和执行时机。

2024-02-20 14:37:22 305

原创 浅谈Vue组件之间的通信

这样可以将不同的功能模块的状态分开管理,同时也可以通过modules之间的通信实现非父子组件之间的通信。在大多数情况下,Vuex是最常用的方法,因为它提供了可预测的状态管理,使得组件之间的通信更加清晰和易于维护。:Vuex是Vue的状态管理模式,用于在多个组件之间共享状态。:如果两个非父子组件之间存在一个共同的父组件,那么可以通过父组件作为中介来实现它们之间的通信。这种方式主要用于高阶组件库的开发,但也可以用于非父子组件之间的通信。这样,任何组件都可以触发事件,并且任何组件都可以监听这些事件。

2024-02-20 14:31:29 1005

原创 程序员为什么不喜欢关电脑?

虽然这些原因解释了为什么程序员可能不喜欢关电脑,但也要注意到,长时间不关机也可能带来一些负面影响,如硬件磨损、性能下降等。因此,程序员应该在保持工作效率和系统健康之间找到一个平衡点。

2024-02-20 14:00:24 271

原创 常见的web前端开发框架推荐

总结来说,每个框架都有其独特的优点和适用场景。在选择框架时,你需要考虑你的项目需求、团队经验和个人偏好。同时,也要考虑框架的入手难度、性能、稳定性、适用场景和维护成本等因素。

2024-02-20 10:51:24 1186

原创 浅谈前端性能优化的方法

前端性能优化方法有很多,通常需要综合应用,以实现最佳的前端性能优化效果。

2024-02-20 10:21:26 759

原创 cookie,sessionStorage和localStorage的区别

cookie、sessionStorage和localStorage都是浏览器的本地存储技术,它们有一些共同点,如都是用来在客户端存储数据,但也有一些重要的区别。总的来说,cookie、sessionStorage和localStorage各有其特点,需要根据具体的应用场景和需求来选择使用哪一种。

2024-02-20 10:09:10 229

原创 介绍一下浏览器的缓存(Expires, Cache-Control等)

浏览器的缓存机制通过Expires以及其他相关头部字段,实现了对网页和资源的有效缓存和更新控制。这不仅提高了网页的加载速度,还降低了服务器的负载和带宽的使用,为用户提供了更好的浏览体验。开发者可以通过合理地设置这些头部字段来优化应用的性能。

2024-02-19 14:55:04 1012

原创 浅谈Java和JavaScript区别与联系

总的来说,Java和JavaScript虽然名字相似,但在设计目标、语法、类型系统、内存管理、性能和执行环境等方面存在显著区别。它们各自在不同领域有着广泛的应用,了解它们的区别和联系对于有效地使用这两种语言非常重要。Java和JavaScript虽然名字相似,但它们是由不同的公司开发的不同产品,存在明显的区别。

2024-02-19 14:40:50 307

原创 浅谈优化SPA首屏加载速度

SPA(单页面应用)首屏加载速度慢的问题,通常可以通过以下几种方式来解决:

2024-02-19 14:30:48 357

原创 删除数组用delete和Vue.delete有什么区别

用于删除数组中的元素。这是 Vue.js 的响应式系统的一部分,确保当数组元素被删除时,任何依赖于这个数组的 Vue 组件都会被重新渲染。删除了索引为 1 的元素,并且数组的长度也被更新为 3。方法专门用于删除数组的元素,并且会更新数组的长度和触发视图的重新渲染。在 Vue.js 中,当需要删除数组元素时,应该使用。操作符用于删除对象的属性,而不是数组的元素。是两个完全不同的概念,它们在删除数组元素时的作用和效果也有所不同。来删除数组中的元素时,它实际上是将该位置的元素设置为。,而没有改变数组的长度。

2024-02-19 13:57:08 445

原创 el-select的change事件中传参

如果我们想在el-select的change事件中拿到一些特定的参数,就可以用到(…arr)=>checkManager(field.name,…arr)的方式传参。

2022-07-19 16:41:33 4738 1

原创 前端面试题

前端面试题介绍一下浏览器的缓存。(Expires, Cache-Control等)(5分)可以参考这篇博客。描述一下cookie,sessionStorage和localStorage的区别?(5分)可以参考这篇博客前端性能优化有哪些方法?(至少5种)(5分)可以参考这篇博客vue组件通信。(5分)可以参考这篇博客写一个验证微信号有效性的正则。(微信号格式:由6-20个字母,数字,连字符,下划线组成,且必须以字母开头)(10分) /^[a-zA-Z][a-zA-Z\d

2021-06-11 18:22:54 180

原创 关于options请求方式

关于options请求方式options请求方法的主要用途有两个:1、获取服务器支持的HTTP请求方法;2、用来检查服务器的性能。例如:AJAX进行跨域请求时的预检,需要向另外一个域名的资源发送一个HTTP OPTIONS请求头,用以判断实际发送的请求是否安全。为什么会出现options请求方式想必很多小伙伴在第一次遇到请求方式为options时,会有一丝诧异,有些人会百度百度,有些人可能压根不在乎。至于为什么会出现options请求,我也是百度查阅资料略知一二。这得从浏览器同源策略和跨域说

2021-05-28 15:35:44 7055

原创 使用 axios 拦截器解决「 前端并发冲突 」 问题

使用 axios 拦截器解决「 前端并发冲突 」 问题背景一般的处理方式 — 每次发请求添加 loading更优的解决方案:axios 拦截器统一处理1.interceptors2.cancel token:具体实现1.存储所有 pending 状态的请求2.在请求发出前检查当前请求是否重复3.在请求返回后维护 pendingRequests 对象4.需要清空 pendingRequests 对象的场景功能扩展1.统一处理接口报错提示2.发送请求时给控件添加 loading 效果3.支持多个拦截器组合使用总

2021-05-28 15:05:20 273

原创 斗鱼自动发弹幕

斗鱼自动发弹幕(function () {var timer = null;var spred = [’.’, ‘.’, ‘.’, ‘.’, ‘.’];var start = 1;// 加载样式var fixInp = document.createElement(‘textarea’);var fixSend = document.createElement(‘input’);var fixStop = document.createElement(‘input’);var tips1

2021-05-28 15:02:18 6580 9

原创 canvas实现登录的图形验证码

canvas实现登录的图形验证码html部分的代码如下 <div class="s-canvas" > <input type="text" placeholder="请输入右侧四位随机码" v-model="randomCode"> <canvas id="s-canvas" :width="contentWidth" :height="contentHeight" @click="

2020-08-26 11:21:44 674

原创 本地vue项目的本地调试,同一个局域网下如何让其他人也可以访问我的本地项目

本地vue项目的本地调试,如何让其他人也可以访问我的本地项目(同一个局域网下)我们只需要在config文件夹下配置下host属性,只需要把host:"",里面的值改为你本地的ip即可,记得加上端口号如果是vue-cli3没有config文件,就在根目录创建上vue.config.js文件,然后同样配置host属性即可。...

2020-08-18 15:37:57 5879

原创 element的日期范围选择器快捷选择今日,昨日,本周,上周,本月,上个月,禁止选择当前日期之后的日期

element的日期范围选择器快捷选择今日,昨日,本周,上周,本月,上个月,禁止选择当前日期之后的日期 <template> <div class="card-data"> <el-date-picker v-model="orderValue" type="daterange"

2020-08-18 15:20:38 1562

原创 浅谈Vue状态管理器

Vue状态管理器1.什么是vuex?vuex是一个vue.js应用程序开发的状态管理模式,他采用集中式存储管理应用的所有组件的状态,并以相应的规则保证以一种预测的方式发生改变。2.使用vuex的原因当我们遇到多个组件共享状态时,多层组件的传值非常繁琐,不利于维护,因此我们把组件的共享状态抽取出来,以一个单例模式管理,在这种模式下,不管在哪个组件都可以获取状态或触发行为。3.vue...

2019-11-30 20:26:19 399 1

原创 关于git的一些基本操作,配置密钥拉代码

文章目录1.目录2.git2.1 创建本地的版本库2.2 工作区编写代码,编写完毕之后把代码存入到暂存区2.3 查看当前git的状态2.4 把暂存区的代码提交到版本库中2.5 配置git用户信息2.6 创建远程仓库2.7 上传本地仓库的代码到远程仓库2.8 配置ssh秘钥2.9 项目组成员克隆远程的代码(仅此一次)2.10 项目组成员更新自己的代码1.目录2.gitGit是目前世界上最先...

2019-10-11 22:04:07 295

原创 sass的语法及其用法

文章目录1、sass语法1.1 css的编译模式1.2 sass介绍1.3 如何使用scss2、sass用法2.1 安装 sass 模块2.2 配置处理scss文件gulp的任务3、学习scss 语法3.1 学习scss的注释语句3.2 变量3.2.1 单值变量3.2.2 scss做四则运算3.2.3 多值变量3.2.4 复杂变量 - 循环3.3 scss嵌套3.4 mixin 混入3.5 扩展 ...

2019-10-11 22:00:54 318

原创 js实现放大镜(源代码)

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-U...

2019-09-22 20:02:17 1616

转载 canvas 制作flappy bird(像素小鸟)全流程

flappy bird制作全流程:一、前言像素小鸟这个简单的游戏于2014年在网络上爆红,游戏上线一段时间内appleStore上的下载量一度达到5000万次,风靡一时,近年来移动web的普及为这样没有复杂逻辑和精致动画效果,但是趣味十足的小游戏提供了良好的环境,同时借助各大社交软件平台的传播效应,创意不断的小游戏有着良好的营销效果,得到了很多的关注。此前在网上查询了很多关于这个小游戏...

2019-09-14 20:36:51 1549

原创 js实现烟花效果

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> #container{ width: 80%; height: 600px; border: 2p...

2019-09-09 17:07:32 1180

原创 js模拟下拉菜单-键盘、鼠标(代码详解)

以下代码实现了下拉菜单的所有功能,既可以鼠标操作也可以通过键盘实现上下选择,基本效果如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, init...

2019-08-30 12:16:07 481 3

原创 用js做数字字母混合的随机四位验证码

用js做数字字母混合的随机四位验证码 // 创建一个文本框 //创建一个刷新按钮

2019-08-22 08:50:27 1475

空空如也

空空如也

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

TA关注的人

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