- 博客(60)
- 收藏
- 关注
原创 前端性能优化:防抖与节流
一、防抖和节流主要是干什么的防抖和节流主要用于控制函数执行的频率,通过限制函数的触发次数,避免函数被过度调用而引发的性能问题或产生不必要的副作用。防抖和节流能够优化函数执行频率,提升性能,控制事件触发频率,优化用户输入,实现平滑动画等。在需要控制函数执行频率以避免资源浪费、提高交互体验或优化动画效果的场景中,防抖和节流都是非常有用的技术手段如果还是不太能理解他俩的区别,之前我在一个评论区看到一个神评:“防抖就是回城,节流就是放技能”,相信看到这句话,就能通俗易懂的理解他俩之间的区别了。
2024-03-20 22:03:32 379 1
原创 Vue 通过自定义指令实现前端按钮权限功能
Vue 通过自定义指令实现前端按钮权限功能登录完以后通过token获取用户对应的button(按钮权限),通过自定义指令,判断当前按钮的权限是否在用户对应的button数组里,若不在即删除该按钮DOM。
2024-02-26 11:39:56 607
原创 Vue 批量注册全局组件
Vue 批量注册全局组件在项目开发中,我们经常会封装一些全局组件,然后在入口文件中统一导入,这时就会出现一个问题,如果我封装了很多组件,假如有成百上千的组件,都想注册成全局组件,那岂不是入口文件要引入几千行,显然这样是很笨拙的,所以就出现了批量注册全局组件。
2024-01-21 18:02:21 522
原创 VS Code 配置 Vue3 模板 详细步骤
VS Code 配置 Vue3 模板 详细步骤1、打开 VS Code ,在页面左下角找到这个设置图标,然后找到 “用户代码片段” 2、接着点击 “新建全局代码片段文件” 3、在输入框中输入你要设置的模板名,然后回车确认4、接下来配置自己想要模板代码,或者也可以借鉴我写的这个,具体根据自己的需求来配置5、接下来看一下效果,在 .vue 文件里面输入你刚刚设置的那个模板名,然后回车,就可以看到刚刚配置的模板代码了希望对大家有用,喜欢的可以点个赞鼓励一下
2024-01-11 15:24:16 1614
原创 TS报错:无法重新声明块范围变量“a”
TS报错:无法重新声明块范围变量“a”TypeScript 编译器选项的配置可能导致了这个问题。比如,是否启用了 isolatedModules 选项,该选项可以确保每个文件都是独立的模块。
2023-12-27 15:12:32 703
原创 配置代理——解决跨域问题(详解)
配置代理——解决跨域问题(详解)二、跨域问题的产生当出现以下报错,看到 CORS 和 'Access-Control-Allow-Origin' 这两个关键信息的时候,就说明出现跨域问题了
2023-07-26 16:44:04 3917 3
原创 如何把本地项目的代码上传到 GitHub 上(详解)
如何把本地项目的代码上传到 GitHub 上(详解)说明:这里的案例就用我之前写的一个前端页面(内蒙古招生考试信息网首页)来演示一下。
2023-07-19 15:23:30 2264
原创 哈希表以及用js封装一个哈希表
下面是 chatGPT 给出的解释:哈希表(Hash Table)又称为散列表,是一种用于存储键值对的数据结构。它通过哈希函数将键映射到一个固定大小的数组中的位置,该位置称为哈希桶(Hash Bucket)。哈希表的优势在于可以快速插入、删除和查找数据。哈希函数是哈希表的核心,它接受一个任意大小的输入(键),并通过计算返回一个固定大小的哈希值。哈希值被用作数组的索引,用于存储和检索对应的键值对。由于哈希函数的输出是固定的,不同的键可能会映射到相同的哈希值,这就产生了哈希冲突。
2023-07-15 14:53:41 263
原创 node拿不到post请求数据 req.body 一直返回的是一个空对象
node拿不到post请求数据 req.body 一直返回的是一个空对象需要在 header 中将 Content-Type 设置成application/json,这样后台才可以获取到值,
2023-07-09 19:27:45 766
原创 CORS如何实现跨域(前端+后端代码实例讲解)
跨源资源共享(CORS,或通俗地译为跨域资源共享)是一种基于HTTP头的机制,该机制通过允许服务器标示除了它自己以外的其他源(域、协议或端口),使得浏览器允许这些源访问加载自己的资源。跨源资源共享还通过一种机制来检查服务器是否会允许要发送的真实请求,该机制通过浏览器发起一个到服务器托管的跨源资源的“预检”请求。在预检中,浏览器发送的头中标示有 HTTP 方法和真实请求中会用到的头。下面举一个简单的跨域请求的例子现在我从向服务器resres。
2023-07-03 19:27:43 693
原创 jsonp 详解 —— 终于搞懂 jsonp 了
JSONP 不是一门编程语言,也不是什么特别的技术,它更像一个漏洞,程序员可以利用这个漏洞,实现跨域(可以简单理解为跨域名)传输数据。在介绍 JSONP 之前,先来介绍一下浏览器的同源策略。通过 jsonp,我们可以避开浏览器的同源策略,从而进行跨域请求。jsonp 是利用 HTML 标签的 src 属性引用资源不受同源策影响的特性来实现的,实现步骤如下:通过动态创建 script 标签,其 scr 指向非同源的 url,并传递一个 callback 参数给服务端。
2023-07-02 22:24:55 7811
原创 前端模块化导入与导出方法总结
模块化是指将一个大的程序文件,拆分成许多小的文件,然后将小文件组合起来。举个简单的例子,我们要写一个实现 A 功能的 JS 代码,这个功能在项目其他位置也需要用到,那么我们就可以把这个功能看成一个模块采用一定的方式进行模块化编写,既能实现复用还可以分而治之。具体说来,JS 模块化方案很多,有 AMD/CommonJS/UMD/ES6 Module 等,本文主要介绍CommonJS和ES6 Module的用法。二、模块化的好处1、防止命名冲突2、代码复用3、高维护性。
2023-07-02 15:20:19 738
原创 uniapp 实现 app 聊天页面功能
最近在写一个 app ,其中有一个功能是实现简单的聊天界面功能,虽然听起来是一个很简单的功能,但是在开发的时候会遇到各种问题,经过上网查找解决了自己的问题,下面我记录一下。
2023-06-18 21:08:04 5353 5
原创 uniapp 使用组件 uni-list 实现聊天列表功能
【代码】uniapp 使用组件 uni-list 实现聊天列表功能。基本用法设置title属性,可以显示列表标题设置disabled属性,可以禁用当前项设置note属性 ,可以在第二行显示描述文本信息设置show-badge属性 ,可以显示角标内容设置show-switch属性,可以显示 switch 开关设置thumb属性 ,可以在列表左侧显示略缩图设置show-extra-icon属性,并指定extra-icon可以在左侧显示图标
2023-06-11 22:37:03 3087
原创 钉钉小程序页面之间传递数据如何传递对象
钉钉小程序页面之间传递数据如何传递对象编码encodeURIComponent解码decodeURIComponent在浏览器中,你可以将编码后的字符串作为参数放在 URL 中传递。在接收到 URL 后,通过 decodeURIComponent 解码即可得到原始的字符串。除此之外,在一些文本编辑器中,encodeURIComponent 和 decodeURIComponent 也被用来实现 URL 编码和解码的功能。
2023-06-03 21:40:40 814
原创 新电脑运行 javaweb 项目需要下载什么软件以及需要进行哪些配置(超详细教程,适合没有进行过任何配置的电脑)
有时候我们购买新电脑之后,电脑里面空空如也,这时我们如果想运行一个javaweb项目,电脑需要下载哪些软件,以及需要进行什么配置呢?接下来我将详细讲解整个配置过程,如果对你有帮助,可以留下你宝贵的赞!!!新电脑运行 javaweb 项目需要下载什么软件以及需要进行哪些配置(超详细教程,适合新手)
2023-05-09 21:13:44 4271
原创 js 实现时间差函数和用 js 得到一个格式为 (yyyy-MM-dd) 日期的函数
时间差。js 实现时间差函数和用 js 得到一个格式为 (yyyy-MM-dd) 日期的函数
2023-05-03 10:59:16 192
原创 链表及链表的常见操作和用js封装一个链表
/ 封装 append 追加方法// 1、创建新的节点// 2、判断添加的是否为第一个节点if (this.length == 0) { // 2.1 是第一个节点} else { // 2.2 不是第一个节点// 找到最后一个节点while (current.next) { // 判断下一个节点是否为 null ,如果为 null 就跳出循环,如果不为 null ,就继续往后寻找,一直找到最后的节点// 最后节点的next指向新的节点。
2023-04-30 22:49:41 657
原创 cnpm 安装 electron 时报错cnpm : 无法加载文件 D:\nodejs\node_global\cnpm.ps1,因为在此系统上禁止运行脚本
【代码】cnpm 安装 electron 时报错cnpm : 无法加载文件 D:\nodejs\node_global\cnpm.ps1,因为在此系统上禁止运行脚本。
2023-04-23 23:42:17 599
原创 清理C盘的几种方法,帮你解决C盘爆红的烦恼
我们使用电脑时,c盘总是不知不觉就“变红”,好像下载的东西都在其他盘符啊,但c盘却莫名其妙的空间变少了,c盘空间不足的原因是什么?c盘中的大量内存是被什么占用了呢?:许多软件会默认安装在c盘,这会导致c盘空间减少(即使没有安装到C盘,很多文件也会自动安装到C盘里面)。:电脑在启动或程序运行任何操作时都会产生临时文件,这些文件占用了大量的c盘空间。:系统备份文件占用大量的空间,如果备份频繁,c盘空间就会被大量占用。:电脑使用时间长了,会堆积各种垃圾文件,这会占用大量的c盘空间。
2023-04-16 23:54:11 1181
原创 钉钉小程序如何引入阿里图标
如何在钉钉小程序引入阿里图标呢?下面是具体的步骤第一步:复制项目中的代码第二步:在钉钉开发者工具的根目录新建一个 iconfont.acss 文件,把 刚刚复制的代码全部粘贴到里面 第三步:在 app.acss 里面导入刚刚新创建的 iconfont.acss 文件 第四步:在需要用到的地方直接使用就可以了 只需要根据这四步就可以实现阿里图标的引入,需要注意的是,这里的 iconfont.acss 文件一定要引入到 app.acss 里面,不可以引入到 app.js 里面
2023-04-09 11:27:20 347
原创 钉钉小程序如何解决页面加载完之后才获取到数据的问题,如何在 onLaunch 获取到后端数据之后再执行 onLoad
钉钉小程序如何解决页面加载完之后才获取到数据的问题,如何在 onLaunch 获取到后端数据之后再执行 onLoad
2023-04-08 13:17:15 1021
原创 钉钉小程序报错:Uncaught(in promise) {error:400,errorMessage:“unknow“}
钉钉小程序报错:Uncaught(in promise) {error:400,errorMessage:"unknow"}dd.getAuthCode 获取免登授权码
2023-04-08 12:14:04 911
原创 js 中的 indexOf() 函数的基本使用
js 中的 indexOf() 函数的基本使用还可以根据此方法对照学习lastIndexOf() 方法
2023-03-20 22:31:44 1975
原创 快速排序讲解与剑指 Offer 40最小的k个数的题解(java与js)
快速排序讲解与剑指 Offer 40最小的k个数的题解(java与js)快速排序的思路以及力扣最小k个数的题解
2023-02-22 15:15:46 91
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人