- 博客(106)
- 收藏
- 关注
原创 display: flex,导致子dom宽高失效
父元素子元素添加flex-shrink: 0是 CSS Flexbox 布局模块中的一个属性,用于控制当 flex 容器中没有足够的空间容纳所有 flex 元素时,该 flex 元素是否以及在何种程度上缩小。
2025-04-15 12:59:57
320
原创 如何使用 Vue 自定义指令实现元素拖拽支撑横向和纵向拖拽
在 web 开发中,有时我们需要让用户能够拖拽页面上的元素。Vue 提供了一个强大的机制,允许我们创建自定义指令来实现这种功能。自定义指令可以直接操作 DOM 元素,使其具有更强的灵活性和可控性
2025-01-13 08:56:04
346
原创 《图解HTTP》 学习日记
计算机与网络设备相互通信,双方就需要使用同样的方法,比如,你和别人约定在某个地方见面,见面前,约定好在什么地方见面,见面时双方的特征,以及见面以后做什么等规则都要事先确定,不同硬件、操作系统之间的通信,都需要一种规则,这种规则称为。用来处理链接网络的硬件部分,包括控制操作系统,硬件的设备驱动,NIC(Network interface Card,网络适配器,即网卡),光纤,等一切物理可见部分(还包括连接器等一切传输媒介)。TCP/IP协议族按层次分成以下4层:应用层,传输层,网络层,数据链路层。
2025-01-10 13:55:58
770
原创 原型链,原型属性,函数理解
prototype属性:每个函数都自动拥有一个prototype属性,它是一个对象,包含构造函数创建的所有实例共享的属性和方法。__proto__属性:每个对象都有一个隐式原型属性,指向它的构造函数的原型对象。原型链:通过prototype和__proto__属性,函数和对象之间形成了一个原型链。这个原型链从函数的__proto__开始,经过和,最终指向null。函数是对象:尽管函数有特殊的行为,它本身也是一个对象,具有属性和方法。
2024-12-26 10:44:04
608
原创 vue3项目使用大屏适配方案,使用rem适配,使用插件(postcss-pxtorem)
是一个工具,用于通过插件对CSS代码进行转换。它提供了灵活的方式,可以对CSS文件进行优化、增强兼容性或其他定制化处理。这是一个流行的 PostCSS 插件,用于将CSS中的。这是一个自定义插件,用于移除CSS中的。
2024-11-21 10:53:33
802
原创 vue2组件封装和UI组件的二次封装,方法,属性,ref的传递
使用方法props接受value值,当值发生变化的时候再通过this.$emit("input", newValue),则实现了简单组件的v-model封装,如果不使用第三方UI可以接受到的值使用watch或者计算属性保存,然后再通过事件派发自己保存的值。$attrs和$slots可以透传属性和插槽 然后通过解构插槽——>#[插槽名]=value 就可以获取传递的值,再通过遍历组件原型上的方法,然后把原型上的方法放在组件上,就可以使用ref透传。保存值写法可使用计算属性也可以使用监听器。
2024-11-07 11:44:43
701
原创 vue2自定义拖拽指令可设置拖拽边界
1.在src下新建directive文件夹,然后在directive新建draggable文件夹,在文件夹新建index文件,最后复制上方代码。2.在directive下新建index.js文件,文件代码。3.在 main.js文件中。
2024-09-06 08:52:38
614
1
原创 input自定义指令,限制输入数字,字符串,数字,字母等规则
在你的 Vue 组件中,你可以使用这个自定义指令来控制输入框的行为。以下是如何在模板中使用这个指令的详细说明。
2024-07-29 12:30:54
1455
1
原创 vue2,vue3项目无限滚动组件,支持滑动
把item结构出来然后在设计样式,使用参考类似饿了吗的table。threshold:判断是否需要滚动的项目数量阈值。stepTime:每一步滚动的时间间隔(毫秒)stepHeight:垂直滚动时每一步的高度。stepWidth:水平滚动时每一步的宽度。containerHeight:容器的高度。containerWidth:容器的宽度。fadeInOut:是否启用淡入淡出效果。horizontal:是否水平滚动。items:项目数组。
2024-07-29 11:08:22
1751
5
原创 前端快照,生成截图,前端拍照功能的实现
项目中要实现下载dom的快照,或者生产截图,可以使用html2canvas 这个库,封装成类可以在任何项目中使用。
2024-07-29 10:36:41
672
原创 webscoket+webrtc实现语音通话
前端采用webrtc创建音频上下文,后创建音频源输入和音频处理器,连接音频输入与处理器,处理器再连接到音频输出(扬声器),再通过事件获取音频数据,把音频数据转换成字节数据通过webscoket发送给后端。
2024-04-29 12:22:50
2368
5
原创 ruoyi若依三级菜单名title长度超出优化
项目中遇到菜单名长度超出,又不想更改宽度,可以通过截取title然后加上'...'和title来实现tooltip提示功能来达到优化,若依的菜单名是layout/components/Sidebar/Item文件设置的下面是修改后的代码。
2023-12-07 10:03:30
448
原创 使用VUE3实现简单颜色盘,吸管组件,useEyeDropper和<input type=“color“ />的使用
vue3使用vueuse中的useEyeDropper来实现滴管的功能和使用input中的type="color"属性来实现颜色盘
2023-11-24 14:33:40
1084
原创 js深度拷贝-工具函数
的触发情况的一个例子,它可以防止深拷贝陷入无限循环并导致栈溢出错误。,以避免陷入无限循环,并返回之前已经创建的克隆对象。互相引用,形成了一个循环引用。函数会检测到循环引用,并触发条件。
2023-09-01 15:24:28
224
原创 vue2项目中el-input单独使用max和maxlength不生效问题
今天在vue2的项目中使用element中的组件,因为没有使用form所以max和maxlength属性没有生效,下面是解决办法。使用oninput方法可以控制value值的显示然后来解决值的显示问题。
2023-08-30 14:12:42
3130
原创 通用vue项目应对定制化时该如何组件化
之前写了一个项目,大屏页面是通用页面但是遇到个别用户想要定制化,但是主页如果去做判断显得太过臃肿,后续也无法判断,由于公司不想维护多套代码,于是就考虑抽离成组件!引入所有文件然后再遍历文件后注册组件,成为全局组件,具体是否为全局组件看个人需求使用,这样全局上就有所有的定制化组件,再通过后端返回的组件名,动态渲染。里面的代码抽离成组件,然后通过引入组件然后组测组件,最后通过后端返回的定制化的名字来控制页面显示。2.vite项目中如果想要更灵活,可以考虑动态引入组测组件来实现这个功能,先通过。
2023-08-18 10:52:39
614
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人