自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Vue Router 中 params 传递 null 值转为字符串问题分析

在使用 Vue Router 进行路由跳转时,如果传递到 params 中的值是 null ,在目标页面中接收时,该值会被转为字符串 "null"。这是为什么?

2025-01-08 10:20:20 375

原创 JavaScript 的内存管理与垃圾回收机制详解

JavaScript 的内存管理和垃圾回收机制让开发者无需手动管理内存,但了解其工作原理对于编写高效、可靠的代码至关重要。通过优化内存分配、避免内存泄漏以及正确使用工具,我们可以大幅提升应用性能并降低内存使用风险。

2024-12-30 15:38:59 608

原创 WPSJS:让 WPS 办公与 JavaScript 完美联动

WPSJS 是 WPS Office 提供的 JavaScript 接口,旨在为开发者提供更高的自定义和自动化功能。通过 WPSJS,可以直接通过 JavaScript 代码与 WPS Office 中的文档、表格和演示文稿等进行交互,创建自动化流程、定制功能以及实现复杂的数据处理任务。WPSJS 是一个功能强大的开发工具,能够帮助用户将 JavaScript 与 WPS Office 完美结合,提供强大的自动化、定制化和集成功能。无论是文档处理、表格分析,还是演示制作。

2024-12-23 16:25:43 2434 4

原创 理解 JavaScript 中的数组引用:fill([]) 与 map(() => []) 的区别

为什么 fill([]) 和 map(() => []) 在创建数组时的行为不同?

2024-12-04 14:25:37 460

原创 状态管理与存储:Vuex 和 sessionStorage

sessionStorage 和 Vuex 存储的数据分别保存在不同的地方

2024-11-27 09:17:09 623

原创 理解 JavaScript 的异步:一杯奶茶和排队的故事

JavaScript 的异步编程。它听起来很高深,其实呢,就像排队买奶茶那么简单

2024-11-25 14:15:15 965

原创 Electron 沙盒模式与预加载脚本:保障桌面应用安全的关键机制

沙盒模式:隔离了渲染进程,限制了直接访问系统资源和 Node.js API 的能力,提升了安全性。预加载脚本:在渲染内容加载前执行,用于暴露安全的、受限的 API 给渲染进程使用,确保渲染进程只能通过安全接口与主进程交互。:配合和 IPC 通信,实现了渲染进程和主进程之间安全的双向通信。通过沙盒和预加载脚本的结合,Electron 提供了一种安全、高效的方式来管理桌面应用的前端和系统级资源的交互,让开发者可以安全地构建出功能丰富的桌面应用。

2024-11-13 10:35:29 1900

原创 深入解析:虚拟 DOM

虚拟 DOM 作为一种优化技术,通过减少对真实 DOM 的操作,极大提升了前端应用的性能,尤其是在动态交互频繁的场景中。React、Vue 等前端框架通过巧妙运用虚拟 DOM 和 Diff 算法,实现了高效、流畅的用户体验。然而,虚拟 DOM 也并非无懈可击。在一些复杂的页面和高频更新的场景中,虚拟 DOM 的性能仍然会受到一定限制。因此,开发者仍然需要在项目中灵活应用性能优化策略,确保应用的流畅度和高效性。

2024-11-11 14:59:17 1683

原创 深入解析树摇(Tree Shaking)及其在前端优化中的应用

树摇(Tree Shaking)是通过静态分析代码,去除未使用的代码,减少最终打包文件的体积。树摇这一概念源自“摇晃树木”,通过“摇晃”去掉未使用的部分,使得最终打包出来的代码更为精简。树摇的核心前提是模块化,尤其是ES6 模块importexport使用 ES6 模块语法,构建工具能够更方便地进行静态分析,从而识别并删除未使用的代码。树摇(Tree Shaking)是一项能够显著优化前端应用性能的技术,通过移除未使用的代码,减少了打包文件的体积,提升了页面的加载速度和执行效率。

2024-11-11 14:32:47 800

原创 VSCode调试Electron

使用vscode来调试electron主进程,实现断点调试、监视变量,跟踪代码执行,极大地提高开发效率。

2024-09-27 10:57:05 1215 2

原创 手把手教你在Linux上构建Electron

官网提供支持在windows上使用docker来实现Linux版本的构建。本文教你在Linux环境上一步一步的构建electron,更加易于实现

2024-09-27 10:41:05 3288

原创 理解JavaScript中的对象传递与赋值操作

对象传递当对象被传递给函数时,传递的是该对象的引用。对该引用对象的属性修改会影响到原始对象。赋值操作当函数内部对参数重新赋值时,只改变了参数的引用,不会影响到传入的原始对象。理解这些概念对于编写高效、正确的JavaScript代码至关重要。这篇文章能更好地掌握JavaScript中的对象传递与赋值操作。

2024-07-13 18:47:34 501

原创 Vue 中实现动态右键菜单

实现一个动态右键菜单。这个菜单能够根据用户的点击位置动态调整其显示位置,确保菜单始终在浏览器窗口的可视区域内。这样的实现可以提升用户体验,使应用更加友好和易用。

2024-07-05 17:10:40 2118

原创 Node.js 使用 gRPC:从定义到实现

gRPC(gRPC Remote Procedure Calls)是一个高性能、开源的远程过程调用(RPC)框架,由 Google 开发。它支持多种编程语言,旨在简化和优化分布式系统中的服务通信。2. gRPC的优势:高性能:使用 HTTP/2 和 protobuf 使得 gRPC 在性能和效率方面表现出色。二进制协议和 HTTP/2 的多路复用特性使其通信开销低,速度快。简化开发:自动代码生成和多语言支持简化了微服务的开发和维护

2024-07-04 13:39:29 2240

原创 Protocol Buffers 协议 .proto 文件的编写指南及注意事项

(简称protobuf)是Google提供的一种(轻便高效)编写.proto文件是定义gRPC服务和消息结构等的关键步骤。以下是详细指南,包括编写.proto文件的基本语法和注意事项。

2024-07-04 10:05:32 378

原创 探索 ES6:现代 JavaScript 的新特性

ES6 带来了许多令人兴奋的新特性,使得 JavaScript 变得更加强大和易用。通过掌握这些新语法,开发者可以编写出更简洁、高效和可维护的代码。

2024-06-30 19:11:15 575

原创 函数柯里化:简化 JavaScript 函数调用的神奇技巧

函数柯里化是一种将接受多个参数的函数转换为一系列接受单一参数的函数的技术。通过柯里化,我们可以把一个多参数的函数变成一连串单参数的函数调用,这样做的好处在于可以提供更高的灵活性和可复用性。

2024-06-20 17:04:14 468 1

原创 理解和使用JavaScript的闭包

闭包是JavaScript中的一种函数,它能够记住创建它的环境(词法作用域),即使在函数执行完毕后,这个环境仍然存在。简单来说,闭包允许函数访问其外部函数作用域中的变量。

2024-06-20 17:03:05 411

原创 探索正则表达式的神奇魅力

正则表达式是一种强大的文本匹配工具,但对许多人来说,它们可能看起来令人生畏。本文旨在帮助读者掌握正则表达式的基本概念和常见符号,并提供实用技巧,使其能够更有效地利用正则表达式解决日常的文本处理任务。我们将从简单的匹配开始,逐步深入,涵盖元字符、量词、字符类和捕获组等主题。通过实例演示和解释,读者将学会如何编写灵活而强大的模式,以及如何在实际项目中应用它们。无论是初学者还是有经验的开发者,本文都将为您提供宝贵的正则表达式知识,让您在处理文本时游刃有余!

2024-06-06 17:24:41 1081

原创 解析node——Path模块

在nodejs中,使用path内置模块处理路径、拼接路径,为开发提供了便利和程序的准确性。

2024-05-10 16:26:39 687

原创 服务端渲染 echarts (前端展示)

将echart在node服务端渲染为图片,并将图片发送给页面展示。

2024-04-30 14:22:45 891 1

原创 Linux常见命令及解析

讲解:ls、rm、mkdir、touch、cat、more、cd、pwd、mv、cp、vi/vim、find、grep、wc、管道符|、echo、tail、重定向符>、>>

2024-03-19 15:41:17 1232 1

原创 初识Linux,虚拟机

Linux作为一个服务器操作系统,可以借助虚拟机来搭建Linux系统,包括一些常见的Linux发行版

2024-03-19 15:19:02 507 1

原创 纯前端导出txt文本文件

总的来说,文件下载导出的过程就是创建一个包含文件内容的。标签链接时应该下载链接指定的资源,而不是打开它。,然后通过模拟点击链接来触发下载,最后释放掉。方法来模拟点击链接元素,实现导出指定内容的。属性来指定下载的文件名,告诉浏览器,点击。标签如果希望直接下载文件,而不是跳转到。为指定数据的代码,希望对大家有帮助。是一个包含配置的对象,用来指定。是唯一的,可以被用作链接或者源。当文件下载完成后,应该调用。对象,将其转换为一个可下载的。对象来下载导出指定内容的。中等待导出的数据内容,而。属性为之前创建的包含。

2024-02-29 17:26:46 1404 1

原创 gRPC简介

RPC远程过程调用,调用远程函数就像调用本地函数一样。grpc是跨语言的,支持多种语言

2024-02-23 17:16:39 493 1

原创 node中spawn启动exe程序(exec的问题所在)

使用 child_process 中的 spawn 来启动 exe 程序,并正确的关闭 exe 程序,并可自定义该程序是否隐藏运行。而不是使用 exec 来创建子进程,在关闭创建的子进程的时候会产生套壳进程的问题。

2024-02-23 16:40:35 3913 1

原创 按钮权限控制

根据后端返回的权限, 在需要做按钮权限的位置使用v-if来去判断接口是否返回了该按钮权限来显示或隐藏该按钮

2024-01-10 17:15:06 548

原创 vueRouter动态路由(实现菜单权限控制)

实现思路:1. 提取动态路由 2.权限与动态路由绑定 3. 获取权限筛选动态路由 4. 添加权限(动态路由) 5. 渲染菜单 6. 退出登录时删除动态路由(权限)

2024-01-10 17:08:28 5375

原创 拉伸table表格滚动区域高度

实现拉伸表格滚动区域高度的功能(鼠标选中表格底部边框来拉伸整个表格滚动区域高度)1. 首先获取到 table 表格的dom元素2. 在表格底部边框位置添加新元素(拖动条)3. 对新添加的元素设置 mousedown 事件来拉伸表格高度

2023-12-28 10:04:27 1182 1

原创 导航菜单根据切换的页面高亮对应的菜单

总结:在menu菜单中使用router-link定义切换组件的文字,组件切换对应的router-link`裹的文字会新增类.ant-menu-title-content .router-link-exact-active,从该类使用css中的:has去寻找它的父类ant-menu-item,为其设置高亮样式,从而解决问题。

2023-11-07 17:15:20 452

原创 Electron打包后供外部修改请求地址的配置文件

Electron打包后供外部修改请求地址的配置文件config.json,通过node读取配置文件。

2023-09-28 17:09:29 1478 1

原创 实现electron与grpc通信,并解决打包后preload路径等问题

electron调用grpc,grpc的类型转换,打包后preload路径问题,成功渲染grpc返回的参数

2023-09-28 16:45:11 966

原创 搭建electron_vue项目

搭建electron_vue项目,使用electron镜像解决搭建出现的问题。

2023-09-28 15:58:53 400

原创 ant design vue中table表格滚动加载

在ant design vue组件库中,并没有提供可以直接监听table滚动的api,在此我使用了原生js去对table表格赋予一个监听表格滚动事件。在处理一写数据量特别大的情况下,我们不能把后端的数据一次性全部拿到前端在table表格中展示,为了考虑性能优化,使用了滚动加载表格数据。做这个功能之前,我们首先需要获取到table滚动到底部或者顶部时去触发方法。首先我想要对表格进行滚动加载,接口需要我传递的数据为行数,传递了行数来规定从第几行开始返回部分数据,具体返回数据的条数需要根据接口来定。

2023-07-17 20:05:14 4849 1

原创 封装拖拽组件实现对话框拖拽效果

使用了mixin来封装了拖拽公用组件,来对每个对话框实现拖拽的效果。

2023-07-09 22:24:51 216 1

原创 forEach循环中异步操作的问题

问题:解决 forEach 循环无法正确处理异步操作和等待操作的完成解决方案:1.使用 for...of 循环 2.使用 for 循环 3.使用 Promise.all + map

2023-06-04 19:29:32 5910 2

原创 txt文件上传ant design vue表格以及对表格文件的分列,预览行数等联动效果

实现点击上传txt文件,将txt文件上传至ant design vue组件库的table表格上进行显示,1. 第一个表格用于展示文件以及对文件的显示操作2. 第二个表格用于接收第一个表格的列数据功能(配置项):上传指定的File或Blob格式的文件展示在第一个表格将文件按照指定的符号来进行分列,并且支持自定义符号进行分列。可以控制文件的预览行数。通过从第几行开始选择的配置,第一个表格的列将按照选择好的第几行开始展示在第二个表格的列。

2023-05-28 20:21:11 753 2

原创 节流——结合日常生活

节流是什么?如何实现节流?生活中有哪些节流的应用?

2023-03-20 17:28:19 194 2

JS节流-结合日常生活

节流是什么?怎么使用?生活中有哪些节流的应用?

2023-03-20

txt文件上传ant design vue表格以及对表格文件的分列,预览行数等联动效果

实现点击上传txt文件,将txt文件上传至ant design vue组件库的table表格上进行显示 第一个表格:用于展示文件以及对文件的显示操作 第二个表格:用于接收第一个表格的列数据

2023-05-28

空空如也

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

TA关注的人

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