自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

魏晋-

程序人生

  • 博客(89)
  • 收藏
  • 关注

原创 钉钉登录前端处理

在vue项目中,可通过动态创建script标签,加载js库。渲染二维码的区域的样式,可以自定义去除背景颜色和边框。加载钉钉API接口以后,获取用户扫描之后将获取的。,并且要将goto参数urlencode编码。表示显示二维码的区域的宽。表示显示二维码的区域的高。

2024-03-07 18:09:44 422

原创 Windows无法访问github解决方案

将修改好的文件替换到 C:\Windows\System32\drivers\etc 路径下。进入 C:\Windows\System32\drivers\etc 路径下。执行 ipconfig/flushdns。win+R 输入cmd 回车进入。复制 hosts文件到桌面。在复制好的文件最后加上。

2024-01-26 17:04:09 461 1

原创 Vite+Electron快速构建一个VUE3桌面应用(三)——打包

上一篇文章Vite+Electron快速构建一个VUE3桌面应用(二)——动态模块热重载完成了开发时的动态模块热重载功能,现在是时候来看看怎么完成最后一步——打包了。

2024-01-26 14:17:41 988 1

原创 Vite+Electron快速构建一个VUE3桌面应用(二)——动态模块热重载

在上一篇文章Vite+Electron快速构建一个VUE3桌面应用中,我们了解了如何使用Vite和Electron来快速构建一个Vue3桌面应用。但是,之前构建的应用仅仅是一个简单的版本。在开发过程中,为了更好的开发体验,在开发electron的时候,肯定也希望能有动态模块热重载(HMR),更别说vite那迅雷不及掩耳盗铃儿响叮当之势的加载速度。因此,接着上一篇文章所完成的项目代码,我们来完成Vite和Electron开发时的动态模块热重载功能。Vite+Electron快速构建一个VUE3桌面应用。

2024-01-26 14:15:53 958 1

原创 Vite+Electron快速构建一个VUE3桌面应用(一)

首先,介绍下vite和Electron。Vite是一种新型前端构建工具,能够显著提升前端开发体验。Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。嵌入Chromium和Node.js到二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建 在Windows上运行的跨平台应用 macOS和Linux——不需要本地开发 经验。: 该项目集成度较好,封装较为完整,中文搜索下来文章较多也是该方案,可以直接上手去使用。

2024-01-26 14:14:34 2264 1

原创 nrm-npm包版本管理和详细安装和使用教程

安装 npm 包的时候,可能会感觉下载比较慢,那是因为默认情况下,npm 包的安装都是从国外的 npm 官网地址进行下载的,可以通过更改 npm 源地址来实现更快速度的下载。目前存在使用electron的时候,使用国内的镜像是不可以的,所以在安装electron的时候,就要切换到npm官方的镜像地址。,它允许用户快速地在不同的npm源之间切换。项目中使用nrm,可以加快npm包的下载速度,切换不同的npm源。此时能看到上面 6 个可用的源地址,前面的字符串是每个地址的标识,比如我们切换到。

2024-01-25 15:37:07 1022

原创 nvm--node版本管理详细安装和使用教程

nodejs是项目开发时所需要的代码库,nvm是nodejs版本管理工具,npm是nodejs包管理工具;nodejs能够使得javascript能够脱离浏览器运行,nvm能够管理nodejs和npm的版本,npm能够管理nodejs的第三方插件。默认是C:\Program Files\nodejs,也可能在其他盘,主要取决于安装时的选择。查看该路径下是否有node文件,我这里已经没有了,在控制面板。后一般会自动删除node文件,如果文件还在的话就手动删除。

2023-12-14 17:11:45 525

原创 如何把一个数组json数据,加到已有的树形数据中

要将一个数组的 JSON 数据添加到已有的树形数据中,可以使用递归方法遍历树形数据,并将数组中的每个元素插入到合适的位置。函数会遍历树形数据,找到与数组数据第一个元素的父节点,并将数组中的每个元素插入到父节点的。函数接受两个参数:一个是已有的树形数据。,另一个是要插入的数组数据。

2023-11-27 18:31:16 533

原创 js 如何把一个json数据,组装成树形数据

在 JavaScript 中,可以使用递归的方式将一个 JSON 数据组装成树形数据。这样,你就可以将一个 JSON 数据组装成树形数据了。

2023-11-27 16:58:14 773

原创 electron项目开发环境搭建

app.whenReady()是app启动后的Promise,使用then可以监听对应的状态,在这个回调里面增加createWindow函数,createWindow新建了一个浏览器窗口,设置宽高,并且使用浏览器窗口加载index.html文件。1. 新建目录命名为electronDemo,使用npm init -y 新建一个前端工程,在package.json中增加一行"main": “main.js”,这行代表应用程序的入口是main.js文件。4. 测试electron项目。

2023-08-09 18:36:18 1301

原创 ECharts 折线图使用相关

​​​​​​​ 第3条数据值 = 第2条数据值 + 第3条数据值。即:第2条数据值 = 第1条数据值 + 第2条数据值。只需要修改stack的属性值即可,保持不一致就行。

2023-08-07 10:43:10 221

原创 对象数组嵌套多层childList,如何每层每个childList都遍历改变值

加1,可以使用递归的方法来实现。以下是一个示例代码,演示如何遍历并修改每层的。如果你有一个嵌套多层的对象数组,其中包含。属性,并且想要遍历每一层的每个。

2023-08-03 14:06:08 492

原创 vue中取消http请求

请注意,取消令牌实例只能用于取消单个请求。如果需要取消多个请求,可以创建多个取消令牌实例,并分别传递给对应的请求。要取消HTTP请求,你可以使用axios库提供的取消请求功能。另外,需要确保服务器端支持取消请求的机制,否则即使在客户端取消了请求,服务器端可能仍然会继续处理请求。这样就会触发请求的取消,并在catch块中捕获到一个包含取消原因的错误。

2023-07-07 15:36:26 867

原创 vue 中常用 时间格式转化方式

在Vue中,你可以使用第三方库如moment.js或day.js来进行时间的格式化。这些库提供了丰富的日期和时间处理功能,包括格式化、解析、计算等。无论你选择使用moment.js还是day.js,都需要在Vue组件中引入相应的库,并根据需要使用其提供的方法来格式化时间。在上面的示例中,我们使用moment函数将日期对象转换为moment对象,并使用format方法指定所需的时间格式。在上面的示例中,我们使用dayjs函数将日期对象转换为dayjs对象,并使用format方法指定所需的时间格式。

2023-07-07 15:35:33 6415

原创 vue中使用锚点连接 的几种方式

在Vue中,你可以使用锚点连接(Anchor Link)来实现页面内的跳转。通过使用锚点链接,用户可以点击链接并平滑地滚动到页面中的指定位置。在上面的示例中,我们创建了一个导航栏,并为每个导航项添加了一个带有对应锚点的href属性。然后,在页面中的各个部分(如<div>)上设置了相应的id,作为锚点的目标位置。在上面的示例中,我们通过调用方法来实现平滑滚动效果。你可以将该方法绑定到锚点链接的点击事件上。注意:如果你不需要平滑滚动效果,只需普通的跳转到指定位置,可以直接使用原生的锚点链接,无需使用第三方库。

2023-07-07 15:27:56 3756

原创 企业开发项目流程

对于软件行业,企业做项目需要了解的完整流程。

2023-06-11 01:15:19 396

原创 React 和 Vue 的理解,异同

相似之处:都将注意力集中保持在核心库,而将其他功能如路由和全局状态管理交给相关的库; 都有自己的构建工具,能让你得到一个根据最佳实践设置的项目模板; 都使用了 Virtual DOM(虚拟 DOM)提高重绘性能; 都有 props 的概念,允许组件间的数据传递; 都鼓励组件化应用,将应用分拆成一个个功能明确的模块,提高复用性。不同之处数据流 Vue 默认支持数据双向绑定, React 一直提倡单向数据流 虚拟 DOM Vue2.x 开始引入"Virtual DOM",消

2023-06-08 12:44:06 908

原创 typescript 后续

仅仅占位

2023-06-06 01:17:58 120

原创 typescript中type、interface的区别

interface:接口在TS 中主要用于定义【对象类型】,可以对【对象】的形状进行描述。type :类型别名为类型创建一个新名称,它并不是一个类型,只是一个别名。

2023-06-04 22:05:16 722

原创 typescript 相关概念

属性后面加任意:eg: let b : {name: string, [propName: string]: any },表示属性是可选的 eg:let b : {name: string, age?注意:接口中的所有属性都不能有实际的值,接口值定义对象的结构,而不考虑实际的值。编译文件时,使用 -w 指令后,TS编译器会自动监视文件的变化,并在文件发生变化时对文件进行重新编译。语法:{属性:属性值} eg: let b : {name: string}写法:h: [string, string];

2023-06-04 20:45:42 560

原创 vue3 技能提升

技能1:善用Composition API抽离通用逻辑 是的 技能2:慢慢补充 是的 技能3: 占位

2023-06-03 02:21:43 137

原创 Vue2 和 vue3 版本比较

一,vue2和vue3相同之处。

2023-06-03 02:17:45 243

原创 Vue3 相关Composition Api 2

如果有一个对象数据,后续功能不会修改该对象中的属性,而是生新的对象来替换===>shallowRef。使用场景:用于读取响应式对象对应的普通对象,对这个普通对象的所有操作,不会引起页面更新。我们可以更加优雅的组织我们的代码,函数。shallowReactive:只处理对象最外层属性的响应式(浅响应式)。shallowRef:只处理基本数据类型的响应式,不进行对象的响应式处理。作用:将一个由 reactive 生成的响应式对象转为普通对象。readonly:让一个响应式数据变为只读的(深只读)。

2023-06-03 01:31:41 390

原创 Vue3 常用的Composition API

备注:接收的数据可以是:基本类型、也可以是对象类型。setup不能是一个async函数,因为返回值不再是return的对象,而是promise,模板看不到return对象中的属性。语法: const代理对象= reactive(被代理对象)接收一个对象(或数组) ,返回一个代理器对象(proxy对象)对象类型:通过Object.defineProperty()对属性的读取、修改进行拦截(数据劫持)。通过Proxy(代理):拦截对象中任意属性的变化,包括:属性值的读写、属性的添加、属性的删除等。

2023-05-29 00:06:57 596

原创 JS 排序算法

【代码】JavaScript 相关排序算法。

2023-05-28 23:51:53 334

原创 JS 原型-原型链

函数的prototype属性默认是一个”普通对象“,就相当于是通过new Object()创建的,所以函数的 prototype._proto_ 则指向Object函数的prototype,且prototype也是对象,在读取不到属性时会去自己的__proto__中读取。prototype : 所有的函数创建时,都会创建一个普通对象,作为他的prototype属性,当此函数被当做构造函数用来构造一个对象后,构造出的对象的[[Prototype]]会默认指向这个函数的prototype属性。

2023-05-28 23:47:52 602

原创 JS 删除数组对象 中 某个具体对象

如果去掉updateStatus === ‘1’的值的对象,方法如下。

2023-05-10 22:35:04 506

原创 JS 中bind、call、apply的区别

和call/apply的功能类似,只不过bind修改this指向之后,返回的新函数不会自动执行,如果有需要,需要手动执行;而call和apply改变this之后,返回的新函数会自动执行。方法的功能:修改原函数的this指向,并执行这个新函数。call和aply的第二个(或大于2个)参数为fn传入的参数。用来修改函数的执行上下文(this)。执行时一个对象可以使用另一个对象的方法。

2023-05-10 22:29:43 602

原创 JS 函数防抖、节流

某些情况下,浏览器的一些高频事件对于用户来说其实并没有太大必要,比如mousemove,scroll,resize。这种时候,我们可以将多次的重复触发,改成只执行最后一次,以此来提升执行速度,节省资源。

2023-05-10 22:01:31 789

原创 JS 字符串 方法大全

7.charAt() //获取指定位置处字符(如果超出有效范围的索引值返回空字符串)

2023-05-10 21:36:51 642

原创 前端工程化问题

缺点:由于每次 merge 会自动产生一个 merge commit ,因此在使用一些可视化的git工具时会看到这些自动产生的commit,这些 commit 对于程序员来说没有什么特别的意义,多了反而会影响阅读。每个公司采用的Git 工作流都可能会有差别,有的比较规范,有的比较随意。merge 会自动创建一个新的 commit,如果合并时遇到冲突的话,只需要修改后重新 commit。发布时用的分支,一般测试阶段发现的 bug 在这个分支进行修复。Babel 的主要工作是对代码进行转译。

2023-05-10 20:53:20 651

原创 JS 数组-方法大全

value为要查询的数据;forEach接收的回调函数会根据数组的每一项执行,该回调函数默认有三个参数,分别为:遍历到的数组的数据,对应的索引,数组自身。当每个回调函数的返回值都为true时,every的返回值为true,只要有一个回调函数的返回值为false,every的返回值都为false。但是在排序前,会先调用数组的toString方法,将每个元素都转成字符之后,再进行排序,此时会按照字符串的排序,逐位比较,进行排序。根据指定的数据,从左向右,查询在数组中出现的位置,如果不存在指定的数据,返回-1。

2023-05-10 20:52:45 849

原创 实现即时通信 记录

概念:严格意义上HTTP协议只能做到客户端请求服务器,服务器做出相应,做不出让服务器主动给酷虎推送消息。websocket:这是基于tcp协议的全新,独立的协议,作用是在服务端和客户端之间建立实时的双向通信。SSE:服务端推送事件,它是一种基于http协议,允许服务端向客户端推送新数据的html5技术。缺点:基于文本传输,效率没有websocket高,基于http协议,不是严格的双向通信。优点:基于http。即时通讯方案:短轮询(历史),长轮询(历史),SSE,websocket。

2023-04-14 17:52:35 308

原创 Http请求

5XX : 服务器错误,这类状态码代表了服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。早期HTTP/1.0在每次请求的时候,都要创建一个新的连接,而创建连接的过程需要消耗资源和时间,为了减少资源消耗、缩短响应时间,就需要复用已有连接。301 : 永久移动,表示本网页已经永久性的移动到一个新的地址,在客户端自动将请求地址改为服务器返回的新地址。注意:如果命中了强缓存,在有有效期内,使用了本地浏览器的缓存,该资源是不会向服务器发送请求的。

2023-04-13 20:19:37 434

原创 JS 基础概念

简而言之,函数内部能访问函数外部的变量,而外部函数能访问全局作用域的变量,这样的变量作用域访问的链式结构,就被成为作用域链。内存回收:使用完毕,由垃圾回收自动回收不再使用的内存全局变量一般不会回收,一般局部变量的的值,不用了,会被自动回收掉。解决:result = null // 释放内存,断开了对于之前内部函数的引用,对应的缓存的变量内容也会被释放。从js根部(全局对象)出发,能够访问到的对象、普通变量、函数等,都是需要用的,不会释放。(标记清除:指的是从全局出发,访问不到的内存空间,就会自动被回收)

2023-04-07 23:00:03 256

原创 CSS学习笔记

浏览器的渲染引擎在对文档进行布局时,会按照’css基础盒模型‘标准,将文档中的所有元素都表示为一个个矩形的盒子,再用css决定这些盒子的大小尺寸,显示位置,及其他属性(颜色背景等)定义:块级格式话上下文,是一块独立渲染区域(触发了BFC,这块区域就是一块独立的渲染区域),会将处于BFC的内容和BFC的内容隔离。注意:z-index小坑,如果父辈元素有定位,且配置了z-index,优先按照父辈元素的定位的z-index层级比较。opacity: 0:通过将元素的透明度设置为0,实现看起来隐藏的效果;

2023-04-07 16:02:16 263

原创 Html 基础概念

设置网页视口viewport:相同:defer和async在网络加载的过程是一致的,都是异步执行(放在页面顶部,也不会阻塞页面的加载,与页面同时加载)区别:在脚本加载完成之后,async是立刻执行,defer是等dom加载完且等上面的defer先执行,它在执行。理解:当script标签写在dom上面,会阻塞后面的dom结构的加载和解析。

2023-04-07 15:29:53 385

原创 umi 实战学习

umi使用

2021-12-08 15:39:21 866

原创 React 常见报错

Error: A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.

2021-12-07 17:50:21 798

原创 React 项目搭建与部署,搭建Node服务器

React 项目搭建,部署Node服务器搭建

2021-12-02 16:37:39 2098

空空如也

空空如也

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

TA关注的人

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