- 博客(44)
- 收藏
- 关注
原创 ant-vue-design 中a-select下拉选择框全局自定义滚动条样式
在vue项目中,实现全局使用的a-select选择框都可以默认有自定义滚动条样式。在assets中创建css文件夹用于放自定义样式文件。在main.js中引入样式文件。
2025-03-20 10:38:35
204
原创 JavaScript数组的浅拷贝&深拷贝,以及JSON.parse(JSON.stringify())深拷贝的局限性
JSON.parse(JSON.stringify()) 是一种简单但有限的深拷贝方法。如果需要处理函数、undefined、循环引用等特殊情况,可以使用第三方库(如 Lodash)或手动实现深拷贝。
2025-03-20 10:29:35
832
原创 sonar关于认知复杂度的计算:前端如何降低代码认知复杂度?
认知复杂度主要关注的是代码块的嵌套层次和控制流的复杂性。它与圈复杂度(Cyclomatic Complexity)不同,后者更多地关注代码路径的数量。认知复杂度更注重代码的可读性和理解难度。我们的代码认知复杂度为什么很高?嵌套层级太深、else-if 太多。
2025-02-12 15:08:42
694
原创 前端代码大量if else if替换成switch case 能否降低代码认知复杂度?
结构类型认知复杂度增加点数备注每个if和else ifelse增加 1 点每增加一个条件分支都会增加认知复杂度,嵌套结构也会增加复杂度。整个switch语句增加 1 点尽管有多个case分支,但整体复杂度较低,通常不会为每个case增加复杂度。:每个条件分支都会增加认知复杂度,适合处理较为复杂的条件判断。:整体复杂度较低,适合处理多个离散值的情况。根据具体的业务需求和代码复杂度,选择合适的控制结构可以有效降低认知复杂度,提高代码的可读性和可维护性。
2025-02-10 16:55:37
744
原创 解决Echarts 图表Y轴name属性太长显示不全问题
当y轴标题name太长内容显示不全被隐藏问题,在yAxis中加入以下代码:截断name,自定义要展示的最大宽度,超出后展示省略号,鼠标悬浮展示全部name。
2025-02-08 15:52:20
330
原创 WangEditor5上传/粘贴图片
wangEditor5富文本编辑器上传/粘贴图片,并回显在富文本中。也可以将上传到富文本中的图片自动加入到附件中。附件一般是一个上传图片文件组件,附件在另一篇文章中
2024-12-02 13:28:27
311
原创 ant-design-vue使用upload上传图片并实现预览缩放查看图片
ant-design-vue上传图片后实现预览查看,并支持缩放图片大小
2024-12-02 13:25:36
686
原创 a-tooltip内容过多超出屏幕的优化方案
文本内容溢出使用a-tooltip悬浮展示,但内容真的超级超级多,几千字符,直接导致悬浮窗超出屏幕高度。
2024-10-30 18:59:01
528
原创 vue中子组件的mounted/created钩子不会等待父组件created钩子中的异步方法执行完,生命周期不是跨组件的依赖或等待
vue生命周期钩子执行顺序,钩子不是跨组件等待,是自身的生命周期
2024-09-10 11:39:56
1152
原创 ant design vue 树表格chilren为空数组时也有展开符(加号+)
所有行都有展开符(加号),但实际上chilren为空的数据是不应该有展开符的。
2024-02-26 10:40:08
380
原创 antdesign vue 树形表格 table 默认展开所有行 遇到的坑!
默认展开所有行数据:给table添加`defaultExpandAllRows`属性为true。给table绑定动态key,每次数据更新都更新key值,table就会自动变成新的component,即重新渲染。
2024-02-23 14:23:47
1468
原创 a标签添加disabled属性后,没有鼠标禁用的红色样式(cursor:not-allowed不生效)
给a标签disabled属性添加上了`鼠标禁用样式`cursor:not-allowed和`鼠标禁用事件`pointer-event:none,但禁用样式不生效。
2024-01-11 15:55:41
1665
原创 ant design vue动态添加输入框,输入框动态样式bug
写了一个button点击事件动态添加输入框,当输入框为2个及以上时,在输入框右侧新增一个删除功能图标。,所以当新增输入框时,删除的icon会立即执行,而input框会在0.3s后改变宽度为90%。在这里使用了v-bind 对input输入框的style样式进行动态更新。
2023-12-26 11:26:18
594
原创 antdesign vue 自定义实现可选表格,表格某列选项可选、行可选、表头可选
需求:表格指定列中所有单选框的选中状态与对应行的单选框状态,两两相关;每一行的单选框状态又与表头的单选框状态,两两相关。(1)当选择某些行时,表头是部分选样式;所有行选中时,表头会是选中状态;所有行不选时,表头是非选中状态。(2)当点击表头单选框为选中状态时,每一行会变为选中状态。同理,表格数据选中状态与行选中状态类似上述两步~
2023-12-22 17:33:28
2218
1
原创 DOM编程-动态创建脚本、动态添加样式、DOM创建表格
动态脚本就是在页面初始加载时不存在,之后又通过 DOM 包含的脚本。有两种方式通过动态为网页添加脚本:动态加载外部文件在上面最后一行把元素添加到页面之前,是不会开始下载外部文件的。
2023-12-22 16:20:30
207
原创 DOM操作(包括Node类型、Document类型、Element类型、Text类型)
如何使用DOM操作节点、文档、HTML元素、文本节点的详细方法~
2023-12-22 16:16:41
1257
原创 Web Socket原理和使用
实时性:WebSocket提供了实时的双向数据传输,能够实现高效的实时通信,而不需要通过轮询或长轮询等间接方式。低延迟:由于WebSocket建立在TCP连接上,并且使用更轻量级的协议头部,因此可以减少数据传输的延迟,提供更快速的响应时间。节省带宽:WebSocket使用较少的网络流量,因为它使用更紧凑和有效的数据帧格式,并且可以使用二进制数据传输,而不仅仅是文本数据。更强大的功能。
2023-12-05 13:53:11
230
原创 router.push刷新当前页面,停留在当前标签页不跳转到默认标签页
首先使用了router.push传参query后,路由地址会先改变为’/flowcharts?activeKey=2’,再刷新当前页面(‘/flowcharts?activeKey=2’),就可以实现刷新并停在当前标签页!
2023-12-04 14:17:26
630
原创 Ant-Design的Tooltip如何只在内容溢出时显示,内容不溢出时不显示
scollHeight:元素内容高度,包括溢出的不可见内容。(可视区域高度+被隐藏区域高度,当内容没有溢出时clientHeight ===> scollHeight )clientHeight :元素像素实际高度。(内容有溢出时,理解为可视区域高度)写一个方法阻止鼠标事件,及时页面有多个Tooltip也可以重复使用该方法!
2023-11-30 15:01:12
1354
原创 JS异步编程:Promise、Async/Await、setTimeout与事件循环机制
setTimeout、Promise、Async/Await的使用和区别,它们在事件循环机制中的执行顺序
2023-11-27 10:53:48
1248
原创 MVVM模型和数据代理
在getter和setter内部去操作(读/写)data中对应的属性。具体操作:使用Object.defineProperty()把data对象中所有属性添加到vm上;为每一个添加到vm上的属性都指定一个getter和setter;VM-视图模型viewmodel-vue实例。V-视图view,模板代码。3.数据代理:通过vm对象来代理data对象中数据的操作(读/写)2.MVVM模型:M-模型model,data中的数据。优点:更方便操作data中的数据。
2023-11-24 11:23:14
58
1
原创 尚硅谷-JavaScript笔记(函数调用、数据类型判断、原型链、闭包、对象创建、继承)
-函数对象有显式原型属性(prototype),定义函数时自动添加,默认值是一个空的Object实例对象(Object不满足)--实例对象有隐式原型属性(--proto--),创建对象是自动添加,默认值是构造函数的prototype属性值。--原型链是用来干嘛的?-function声明的函数 ===> 赋值(fun),添加为执行上下文的属性。-arguments ====> 赋值(实参列表),添加为执行上下文的属性。-形参变量 ====> 赋值(实参数据) ==> 添加为执行上下文的属性。
2023-11-24 11:19:37
657
1
原创 早期CSS笔记(几种定位、清除浮动、BFC)
/* 为了边框和文字宽度一致,需要将h2转换为行内块元素 */ display: inline-block;
2023-11-24 11:07:43
71
1
原创 使用 ant-design选择器tags select进行模糊搜索和内容输入。
1.模糊搜索(不区分大小写)2.可输入(对单个标签只能输入英文字符、数字、短横线、下划线和小数点且10个字符内)3.所有标签总长度不超过100字符。
2023-11-24 11:03:55
1419
1
原创 axios 发送请求的传参方式,post表单提交
axios请求方法有get、post、put、patch、deleteget作用:获取数据默认’Content-Type’: ‘application/json’
2023-11-23 15:51:40
3685
原创 解决问题:a-table绑定的列数据是数组,直接使用没有分隔符
问题:在a-table中直接使用:colums="colums"绑定的数据是没有逗号分隔的,会展示为。需求:返回数据为数组[‘CCS’, ‘css-lxl’],要求展示在table列中按逗号分开。解决:使用插槽遍历数组,且最后一项不需要逗号,使用三元表达式。
2023-11-23 10:22:44
190
原创 JavaScript数组遍历方法map/forEach等
javaScript数组遍历方法详细使用方法和区别,包括map,forEach,filter,reduce等
2023-11-22 15:36:00
1243
原创 Pinia的使用和插件扩展
本文对比了pinia与vuex的相同和差异以及使用场景,详细介绍了在Vue3中怎么使用pinia进行状态管理,介绍storeToRefs的使用以及使用插件自动化引入storeTorefs,使用插件持久化数据,storeToRefs与vue的toRefs有什么区别等。
2023-11-22 15:11:58
1878
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人