- 博客(82)
- 收藏
- 关注
原创 vue3动态路由+菜单权限实现
在这里需要注意一件事情,在 main.ts 中 init 方法必须用 async / await 因为必须要保证路由初始化完成在去挂载 router,这样保证在挂载路由的时候,接口的路由信息已经返回了,不然就会到404页面。
2025-02-25 17:27:23
212
原创 vue项目中实现接口并发请求
我项目中因为是图表的关系,在同一个页面会有很多个表格,每个表格都需要进行统计,在加上每个图表是互不关联的,因为一个页面同时请求很多个接口,会导致页面卡顿、页面长时间白屏等不好的交互,所以采用了并发请求的方式实现。
2025-02-25 17:09:18
295
原创 Vue 中报错 TypeError: crypto$2.getRandomValues is not a function
所以我尝试升级 node 版本为 20.16.0,就好了,我原版的 node 版本为16.18.0,因为我们流水线上的node 版本是 16 版本,为了兼容流水线上的版本,我本地也采用的是 16 的版本,所以出现了这个问题,但这个真正的问题是 vite 的错误,他的最新版本是6.0.0,但是 crypto$2 在低版本node中是不兼容的,所以有两种解决方案,升级 node 版本和降级 vite 版本。在新建的项目中,使用的是。创建项目后,执行命令。
2025-02-12 12:29:45
5562
7
原创 element ui上传图片获取临时文件路径
用于上传到服务的时候先进行预览,然后在上传到服务器,一般在 on-change 种可以拿到 file.url,如果在别的回调中就可以使用此方法。
2024-10-11 11:23:18
271
原创 微信/支付宝小程序实现弹窗动画缩放到某个位置
from: 起始值 比如:0to: 结束值 比如:100totalMS:变化总时间 比如: 1000duration: 每多少秒变化的次数 比如: 1onmove:开始移动的回调函数onend:移动结束的回调函数。
2024-10-10 17:32:57
805
原创 前端用canvas实现图片的等比例缩放
根据目标容器的尺寸和图片的原始尺寸计算缩放比例。: 根据缩放比例计算新的宽度和高度。: 获取图片的原始宽度和高度。读取用户选择的图片文件。
2024-09-25 19:30:02
1241
原创 uniapp 实现上传头像,但接口需要file文件处理方式
在微信中上传头像的时候他返回的是临时路径,但是后端需要的是文件对象,当时想了很多办法,但小程序的生态没有那么好,最后去看uniapp的文档,然后想到了一个方法实现,就是先下载然后上传就可以了。
2024-08-18 10:56:21
431
1
原创 在 vue3 中动态路由问题记录
其实这是vite的原因导致的,他在编译的是没有处理这种情况所以报错。,但是在这样用这行部署服务器上跳转会有问题。如果这样子的话需要加上。
2024-08-13 18:41:02
432
原创 过可视化彻底搞懂 Promise执行逻辑
过可视化彻底搞懂 Promise执行逻辑JavaScript 中的 Promise 一开始可能会让人感到有些难以理解,但是如果我们能够理解其内部的工作原理,就会发现它们其实是非常易于掌握的。在这篇博客文章中,我们将深入探讨 Promise 的一些内部机制,并探索它们是如何使得 JavaScript 能够执行非阻塞的异步任务。一种创建 Promise 的方式是使用 new Promise 构造函数,它接收一个执行函数,该函数带有 resolve 和 reject 参数。
2024-07-12 16:10:07
764
原创 二、electron 的 BrowserWindow 的属性
enableRemoteModule 是开启远程模块,意思就是说在别的地方使用 electron 的时候,需要设置为 true 才可以使用。获取当前窗口也是需要 引入 remote ,调用 getCurrentWindow 方法。以上这么写是开启一个新的窗口。
2024-06-07 15:28:37
784
原创 一、Electron 环境初步搭建
返回的是一个 Promise 我们在then里面进行窗口实例创建。在 main.js 文件中我们需要进行初步搭建。此时我们按照官网的教程进行一个初步的搭建,此次监听窗口关闭的是所有的窗口关闭事件,在创建启动执行窗口我们需要进行搭建,进行初始化,然后我们在进行。新建一个文件夹,然后进行。
2024-06-07 12:06:26
533
原创 uniapp 微信小程序 canvas 问题
他不支持真机调试,只能通过预览,另外获取 canvas 的图片的时候 ios 预览 canvas 的图片在真机上不能展示是因为 ios 中需要开启 webp 为 true。今天写小程序的时候在真机调试的时候发现 canvas-2d 在真机 上没有效果,获取不到 canvas 信息。
2024-05-27 14:39:53
1001
4
原创 第二十七章 TypeScript TS进阶用法infer
类型参数 T 通过extends 约束 只能是数组类型,然后通过infer 声明局部 First 变量做提取,后面的元素可以是任意类型,然后把局部变量返回。思路就是 我们除了第一个的元素把其他的剩余元素声明成一个变量 直接返回 就实现了我们的要求 剔除第一个元素。infer 提取参数的妙用 实现四个简单的例子。其实就是反过来就可以了。
2024-03-25 17:58:30
245
原创 第二十四章 TypeScript类型守卫
结合题目实现实现一个函数支持任意类型如果是对象,就检查里面的属性,如果里面的属性是number就取两位,如果是string就去除左右空格如果是函数就执行let value;value()})fn(obj)一看没啥问题 一运行就报错他说找不到a当函数被单独调用时(例如 value()),函数内部的 this 会指向全局对象(在浏览器环境下是 window)修改如下let value;data[key]() //修改这儿})fn(obj)第一个问题解决了。
2024-03-25 12:09:07
368
原创 第二十三章 TS进阶用法proxy & Reflect
与大多数全局对象不同Reflect并非一个构造函数,所以不能通过new运算符对其进行调用,或者将Reflect对象作为一个函数来调用。Reflect的所有属性和方法都是静态的(就像Math对象)Proxy 对象用于创建一个对象的代理,从而实现基本操作的拦截和自定义(如属性查找、赋值、枚举、函数调用等)要使用 Proxy 包装的目标对象(可以是任何类型的对象,包括原生数组,函数,甚至另一个代理)。一个通常以函数作为属性的对象,各属性中的函数分别定义了在执行各种操作时代理 p 的行为。属性设置操作的捕捉器。
2024-03-22 16:11:25
681
原创 第二十二章 TypeScript weakMap,weakSet,set,map
在es5的时候常用的Array object ,在es6又新增了两个类型,Set和Map,类似于数组和对象。1.set集合是由一组无序且唯一(即不能重复)的项组成的,可以想象成集合是一个既没有重复元素,也没有顺序概念的数组属性size:返回字典所包含的元素个数操作方法add(value):添加某个值,返回 Set 结构本身。delete(value):删除某个值,返回一个布尔值,表示删除是否成功。has(value):返回一个布尔值,表示该值是否为 Set 的成员。
2024-03-22 15:26:59
333
原创 第二十一章 TypeScript(实战TS编写发布订阅模式)
什么是发布订阅模式,其实小伙伴已经用到了发布订阅模式例如addEventListener,Vue evnetBus都属于发布订阅模式简单来说就是 你要和 大傻 二傻 三傻打球,大傻带球,二傻带水,三傻带球衣。全都准备完成后开始打球。
2024-03-22 14:58:15
422
原创 第二十章 TypeScript(webpack构建ts+vue3项目)
目前是通过js动态插入style标签的方式进行的,但是我们希望通过link标签引入。性能优化 默认把所有代码打包到一个js文件体积太大了我们可以进行代码分包减少体积。编写webpack.config.js。运行npm run build 打包成功。添加打包命令和 启动服务的命令。tsconfig.json 增加。初始化index.html 模板。main.ts 引入Vue。让ts识别.vue后缀。
2024-03-21 23:42:28
623
原创 第十九章 TypeScript 装饰器Decorator
它们不仅增加了代码的可读性,清晰地表达了意图,而且提供一种方便的手段,增加或修改类的功能。若要启用实验性的装饰器特性,你必须在命令行或。
2024-03-21 17:24:35
373
原创 第十七章 TypeScript 声明文件d.ts
当使用第三方库时,我们需要引用它的声明文件,才能获得对应的代码补全、接口提示等功能。我们可以去node_modules 下面去找axios 的package json。发现axios已经指定了声明文件 所以没有报错可以直接用。通过语法declare 暴露我们声明的axios 对象。如果有一些第三方包确实没有声明文件我们可以自己去定义。例如我们有一个express 和 axios。名称.d.ts 创建一个文件去声明。发现express 报错了。那为什么axios 没有报错。让我们去下载他的声明文件。
2024-03-21 11:17:00
202
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人