
❤️❤️--vue3项目实战记录
项目实战记录
suoh's Blog
My life is a straight line,turning just for you.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
elementPlus中的el-table实现合并单元格
本文介绍了在el-table中实现单元格合并的方法。通过在表格上添加span-method属性,并传入包含资源数据的数组(如CPU、MEM、GPU、NPU等配置信息),使用objectSpanMethod方法对相同itemKey的行进行合并。该方法核心逻辑是:1) 查找相同itemKey的起始行;2) 计算相同itemKey的行数;3) 对第一行返回合并行数,其他行隐藏单元格。最终实现按资源类型合并第一列单元格的效果,适用于展示资源配额等表格数据。原创 2025-07-14 16:50:17 · 345 阅读 · 0 评论 -
vue3中二次封装elementPlus消息弹窗为hooks(好用)
本文介绍了一个基于Element Plus的通用消息提示封装方法,通过useMessage()函数提供了多种消息提示组件的一站式调用方案。该封装包含基础消息、弹窗、通知和确认框功能,并针对常见业务场景(如删除、发布、停止等)预设了专用确认框。实现方案通过国际化支持多语言,调用时只需传入提示内容即可。使用示例展示了如何调用成功提示和删除确认框,简化了开发中的消息提示处理流程,提升代码复用性和可维护性。原创 2025-06-18 14:01:47 · 324 阅读 · 0 评论 -
解决ts报错找不到vue组件,Module “d:src/views/quota/logicpoolinfo/components/add
摘要:针对报一串红错误,提供系统解决方案:1)升级Vite、TS及相关依赖;2)检查tsconfig.json配置,重点关注allowSyntheticDefaultImports和esModuleInterop参数;3)确保只启用Volar插件并禁用Vetur;4)采用<script setup>语法糖简化组件导入。建议按步骤依次排查,通常因配置冲突或语法问题导致报错。(99字)原创 2025-06-05 10:59:09 · 302 阅读 · 0 评论 -
vue3项目中实现国际化语言切换【直接粘贴即可】
注意:所有的项目中的涉及到的语言切换的配置,需要在下面的en.js和zh.js中自行定义好,且需要一一对应,否则可能出现切换了不起作用的情况。对应的英文配置:utils/i18n/locales/zh.js。分为三块:组件封装、store封装、配置方法封装。使用的插件:vue-i18n。原创 2025-04-09 16:39:18 · 533 阅读 · 0 评论 -
pinia中不定义state和action也能正常使用属性和方法
这种设计让 Pinia 使用起来更加灵活,特别是对于熟悉 Vue 3 组合式 API 的开发者来说,代码会更加简洁直观~而直接使用属性和方法,这是因为 Pinia 的设计非常灵活,利用了 Vue 3 的响应式系统。返回的所有内容都会被正确推断为 store 的成员。语法中,你可以直接返回一个包含属性和方法的对象。这些属性和方法会自动成为 store 的一部分。创建,因此pinia中一般定义属性和方法即可。在 Pinia 中,确实可以不显式定义。也能正常使用属性和方法的原因!包装的值才会是响应式的。原创 2025-04-08 20:07:29 · 425 阅读 · 0 评论 -
搭建一个简单的node服务,模拟后端接口
二、创建一个文件夹,用于放你的node服务代码。四、安装 Express(快速搭建服务的框架)法三、在vue3项目中调用,但是要配置代理。三、初始化一个package.json。一、查看是否安装了node和npm。法二、直接在控制台用fetch调用。五、创建serve.js。法一:使用 curl。原创 2025-03-04 10:38:19 · 569 阅读 · 0 评论 -
vue3实现系统tab标签页面切换
由于本系统的keepAlive实现没有用页面的name,而是用v-if条件判断哪些页面缓存就套个keepalive的壳,否则正常展示,因此,上面刷新的逻辑原理,需要配合下面的key值设置。如果,你们是通过设置页面name,结合include实现的缓存,就像下面这种形式,那么可以用v-if实现刷新。刷新的逻辑就是,在store里面存一个isReload的变量。使用的是element-plus中的el-tab组件,结构目录如下。右键显示功能菜单,写成了一个组件,在上面文件中进行引用。原创 2024-08-23 16:08:42 · 1187 阅读 · 1 评论 -
手把手教你如何在vue3中使用tsx渲染组件(必看)
注意:子组件中需要添加 emits: ["numClick"],同vue3类似,vue3中也需要添加defineEmits将事件发射出去。vue中子向父传值都是emit的方式,这个在vue3中写法相似,只是多了一个定义emit的步骤,这也是为了后续的类型推导做准备。注意:v-model里面绑定变量需要加上 .value ,这也是与vue3的区别。v-model,v-show跟以前的用法类似,但注意后面不是双引号“”,而是大括号{}注意:父组件接收子组件发射的方法同样需要加上 on。原创 2024-08-08 10:15:31 · 1962 阅读 · 0 评论 -
强化JS基础水平的10个单行代码来喽!(必看)
规范中提到, 要比较相等性之前,不能将 null 和 undefined 转换成其他任何值,并且规定null 和 undefined 是相等的。是 ECMAScript 6 中新增的一个方法,它可以从类数组对象或可迭代对象(如字符串、Set、Map、NodeList 等)创建一个新的数组实例。提供初始值,cur 从数组第一项开始,若不提供初始值,则 cur 从第二项开始执行,对应的第一次 prev 是数组第一项的值。能做的,reduce都可以做,比如数组求和、数组求积、统计数组中元素出现的次数、原创 2024-08-05 17:46:58 · 936 阅读 · 0 评论 -
vue3中使用vueuse(必看)
首先vueuse不是Vue.use,它是为Vue 2和3服务的一套Vue Composition API(组合式API)的常用工具集,是目前世界上Star最高的同类型库之一。它的初衷就是将一切原本并不支持响应式的JS API变得支持响应式,省去程序员自己写相关代码。通俗的来说,这就是一个工具函数包支持了更好的逻辑分离,它可以帮助你快速实现一些常见的功能,免得你自己去写,解决重复的工作内容。它的功能是将输入的文件转换为 base64 编码,并允许你监听文件的变化。剩余方法自行开发理解哈~State(状态机)原创 2024-08-02 17:49:52 · 2355 阅读 · 0 评论 -
可以给img图片设置颜色,你们知道吗?
大家都知道设置svg图片的颜色只需要设置color值,那么我们想直接修改img图片的颜色如何更改呢?只需要两行代码即可。原创 2024-07-19 09:56:26 · 694 阅读 · 0 评论 -
解决vue3中el-input在form表单按下回车刷新页面
解决方法 : 再给一个input 表单 将其设置style="display:none"中只有一个input 框则按下回车会直接关闭表单 所以导致刷新页面。点击回车之后 刷新页面。原创 2024-07-16 17:45:14 · 777 阅读 · 0 评论 -
ts实现将相同类型的数据通过排序放在一起
可以将相同表名称的字段放在一起。原创 2024-07-11 13:37:20 · 297 阅读 · 0 评论 -
elementPlus自定义el-select下拉样式
即可,这样就可以将下拉框添加到body元素中去,否则当我们失去焦点,下拉就消失了,在元素中找不到el-select。剩下就可以通过如何自定义,大家自行设置吧~如何在f12元素选择器上找到下拉div呢?给el-select添加。原创 2024-07-02 14:54:45 · 937 阅读 · 0 评论 -
vue3+ts实现精确计算两个字符串的相似度
算法来精确匹配两个字符串的相似度百分比。Levenshtein距离是指两个字符串之间,由一个转换成另一个所需的最少编辑操作次数,这里的编辑操作包括插入、删除、替换。通过这种方式实现的字符串相似度是比较准确的。无论是匹配中文、英文、还是中英结合的、或者正序倒序的都可以正确匹配出来~在TypeScript中,可以使用Levenshtein。原创 2024-07-01 17:56:03 · 529 阅读 · 0 评论 -
vue3+ts实现匹配度排序搜索
先看下效果,根据点击后根据搜索的逻辑,可以将全匹配的优先展示,其次根据匹配度依次排序展示,同时忽略简繁体进行搜索。注意:里面引入的简繁体转换插件,是在这个博客中已提到。如果不需要简繁体转换,就可以去掉。原创 2024-05-20 11:27:54 · 415 阅读 · 0 评论 -
vue3中实现简繁体转换
由于项目在大陆和台湾同胞同步使用,因此需要实现中文的简繁体转换,实现输入简体,能搜索出简体和繁体的相关内容,输入繁体,也能搜索出简繁体相关内容。忽略简繁体,扩大搜索范围。过滤的时候,使用该简繁体转换的函数即可,将简繁体相关的内容都返回出来。原创 2024-05-15 16:50:57 · 1627 阅读 · 0 评论 -
Ts递归查找多个根节点树结构某一条数据
【代码】Ts递归查找多个根节点树结构某一条数据。原创 2024-04-03 10:01:13 · 444 阅读 · 0 评论 -
前端实现鼠标点击箭头旋转180度
点击,三角按钮旋转180度。下面是三角形状的样式。原创 2024-02-20 15:01:54 · 1151 阅读 · 0 评论 -
vue3中实现elementPlus树形控件一键展开和收起
【代码】vue3中实现elementPlus属性控件一键展开和收起。原创 2024-01-11 17:23:08 · 1556 阅读 · 0 评论 -
vue3中实现el-tree通过ctrl或shift批量选择节点并高亮展示
按住ctrl键实现单个多选 按住shift实现区间范围多选。2、通过循环节点数组来更新nodes节点中isCurrent属性,控制高亮。引入的hooks文件,index.ts。1、重点是要获取当前所选节点数组。原创 2023-12-08 16:12:28 · 1767 阅读 · 0 评论 -
Argument of type ‘string | null‘ is not assignable to parameter of type ‘string‘. Type ‘null‘ is n
sessionStorage.getItem("detail") 方法可能返回null , 而null 不是字符串 , 则JSON.parse在执行时就会出错,所以typescript 提示了上面的错误信息,即要处理为null 的情况。原创 2023-10-19 14:35:42 · 2110 阅读 · 0 评论 -
解决vue3+ts+vite中启动报错No known conditions for “./lib/locale/lang/zh-cn“ entry in “element-plus“ package
【代码】解决vue3+ts+vite中启动报错No known conditions for "./lib/locale/lang/zh-cn" entry in "element-plus" package。原创 2023-08-08 11:20:04 · 14142 阅读 · 5 评论 -
traneous non-props attributes (ref_key) were passed to component but could not be automatically inhe
你可以选择重新安装vue3,或降低element-ui版本,建议是升级vue3版本。一般是vue版本和element-plus版本不兼容导致的。vue3中使用element-plus时报错。然后重启项目就好了。原创 2023-05-11 15:50:56 · 350 阅读 · 0 评论 -
解决vue3+vite项目中引入mockjs失败的问题--无法找到模块“mockjs”的声明文件
看到上面报错,根据提示 修改声明方式 declare module 'mockjs'我们修改一下引入的声明,发现修改之后仍然报错;需要在vite-env.d.ts文件中,添加。然后就可以正常使用了。原创 2023-06-28 17:20:02 · 1834 阅读 · 0 评论