自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 10-20位随机字母数字特殊符号密码

调用方法:passData.value.password = generateRandomString(Math.floor(Math.random() *11) + 10);得到10-20位随机密码。调用方法:validatePassword(value) 为true则校验通过。需求:点击按钮,生产随机密码,同时对用户输入的密码进行规则校验。规则:10-20位密码且必须包含至少一个字母、数字、(

2023-04-24 18:24:35 2418

原创 hover显示滚动条

目标:在card-content盒子内容溢出的情况下,先隐藏滚动条,当用户将鼠标移入盒子内部后,显示滚动条,我这里只用到y轴滚动条。

2023-04-18 17:43:08 1185 1

原创 base64格式(pdf/word/ppt等)文件的下载与预览

后端返回base64格式的文件数据,前端根据接收的数据进行转换后实现对文件的下载和预览方法:

2023-04-17 09:33:09 2169 4

原创 uniapp点击生成商品海报、下载海报、分享海报

开发过程中遇到的根据商品信息生成海报,供用户下载海报 、分享海报等需求,页面结构及js完整代码如下:

2023-02-17 14:30:38 1321

原创 超详细版:HBuilderX中实现uniapp小程序动态tabBar

先在Page.json文件中tabBar/list数组内配置好所有需要展示的页面,这里只需要在list各对象中设置好。自定义tabBar组件:在根目录下创建components/myTabBar/myTabBar.vue文件。根据用户身份或登录状态匹配出需要展示的tabBar页面,建立vuex进行存储。隐藏所有tabBar页面对应的.vue页面的导航栏。最后一步:在各导航栏.vue文件中使用该组件即可。

2023-02-13 10:56:53 5725 5

原创 ECharts柱状图上方添加指定照片

ECharts柱状图上方添加指定照片:在series中添加markPoint,由图片地址、图片所在柱状图位置、图片所处y轴位置组成

2023-02-09 15:50:42 2729

原创 JS导出Echarts图标数据为Excel表格

开发需求需要在Echarts图表右上角添加一个按钮,将图表数据下载为Excel,下面获取到所有echarts数据后通过js手动对数据进行排列和换行的方式完成了需求。

2023-02-01 16:24:11 1232

原创 vite打包时通过.env在不同的模式下传递不同环境变量数据

要在打包过程中,根据不通模式获取到不同的环境变量值,需要通过--mode选项标志来覆盖命令使用的默认模式,比如开发环境/测试环境/生产环境都对应不同的标题:1. 先在项目根目录下创建三个.env文件对应三个环境变量;2. 在package.json文件中scripts内传递 --mode 选项标志来覆盖命令使用的默认模式;3. 使用const uploadFileUrl = ref(import.meta.env.VITE_APP_TITLE)

2023-01-30 15:31:53 3034

原创 Vue3报selectValue is not defined at d.onUpdate:modelValue.s.<computed>.s.<computed>

开发过程中二次封装了一个搜索的组件,子组件内使用了el-select和el-input参数分别对应父组件传入的selectValue和selectText参数子组件内部@change和@input事件来同步触发组件中数据的修改最终本地开发环境一切正常,部署到测试环境和生产环境后出现下方报错:selectValue is not defined at d.onUpdate:modelValue.s..s.报错后开始不自信,反复查看本地都是没有报错了,但是测试环境就是有问

2022-12-06 18:02:11 2473

原创 vue2/vue3 Transition+routerView实现过渡动画效果

这里涉及到两个知识点:Transition+routerView,下面先展示下vue官网相关使用说明:1.Vue 提供了Transition内置组件,可以帮助制作基于状态变化的过渡和动画;2.是基本的动态组件,所以我们可以用组件给它添加一些过渡效果

2022-12-02 09:52:14 3909

原创 前端为上传图片添加水印,可回显可存储

代码不多,可以借助于Element-ui的el-upload或者Ant-design的a-upload,在组件中使用before-upload钩子拿到file文件数据后:

2022-11-22 09:52:20 1220

原创 看一遍学会Vue结合axios使用mockjs

这意味着当mockjs匹配到‘/mock/tableDataOne’这个路径时,就会返回对象中的数据。5.在.vue文案中引入request并发送请求(这里在mouted中做了简单的测试使用)第5步在.vue文件的mounted中使用封装的request发送一个新的请求。2.在vue文件src下新建mock文件夹与内部mock.js 文件。在后端接口未开发完成情况下,前端自己模拟接口返回的数据。3.main.js文件中引入mock.js文件。第2步mock.js文件中添加mock模拟代码。

2022-09-29 16:32:29 1637

原创 npm ERR! code ERESOLVEnpm ERR! ERESOLVE could not resolvenpm ERR! npm ERR! While resolving: @vue/

legacy-peer-deps标志是在v7中引入的,目的是绕过peerDependency自动安装;它告诉 NPM 忽略项目中引入的各个modules之间的相同modules但不同版本的问题并继续安装,保证各个引入的依赖之间对自身所使用的不同版本modules共存。在NPM v7中,现在默认安装peerDependencies。在很多情况下,这会导致版本冲突,从而中断安装过程。

2022-09-29 15:18:23 8236

原创 Vue点击按钮 复制指定内容

下面提供一个方法用于实现复制指定文本。函数传入的数据即为需要复制的文本内容。创建一个文本域dom元素将dom元素textarea的值value设置为传入文本将dom元素添加到body上触发textarea的select方法判断是否支持copy复制完成复制后将dom元素从body移除避免内存泄漏

2022-09-29 09:10:48 569

原创 基于vue-croppper的组件封装

@realTime支持小图实时预览支持左右旋转支持大小缩放支持框选图片区域支持裁剪指定区域附npm示例地址(可根据需求添加功能):https://codepen.io/xyxiao001/pen/yLooYKg

2022-09-27 09:23:24 502

原创 vue3中使用getCurrentInstance通过ref调用子组件属性与方法

1.setup语法糖中导入子组件2.在子组件标签上绑定ref值3.setup内部从vue中按需导出 getCurrentInstance 方法4.调用getCurrentInstance方法导出proxy5.通过proxy.$refs.子组件ref名.子组件内属性/方法 实现调用子组件中:js内需要通过defineExpose导出父组件需要使用的属性和方法即可

2022-09-19 10:42:38 3974

原创 Failed to parse source for import analysis. Install @vitejs/plugin-vue to handle .vue files.

[vite] Internal server error: Failed to parse source for import analysis because the content contains invalid JS syntax. Install @vitejs/plugin-vue tohandle .vue files.再次npm i@vitejs/plugin-vue后仍然无效可以看下vite.config.js文件中的plugins配置项中是否添加了vue(),如:...

2022-08-29 17:11:36 3533

原创 vite-plugin-vue-setup-extend和unplugin-auto-import让v3开发更丝滑

1.vite-plugin-vue-setup-extend让v3的setup语法糖增强;2.unplugin-auto-import让API自动导入,可以让vue-router中的createRouter,createWebHashHistory,createWebHistory等API直接写在setup内。可以让vueAPI里面的ref,reactive,watch,watchEffect等等api直接写在setup内,也可以让pinia中的createPinia直接写在setup.........

2022-08-29 10:27:12 6875 4

原创 getBoundingClientRect、offset、page、client、screen相关API及释义合集

dom.getBoundingClientRect().top距离可视区顶部dom.getBoundingClientRect().right距离可视区顶部dom.getBoundingClientRect().bottom距离可视区顶部dom.getBoundingClientRect().left距离可视区顶部dom.getBoundingClientRect().width宽度(返回小数)= dom.offsetWidth(返回整数)dom.getBoundingClientRect()等.

2022-08-26 17:52:54 993

原创 js拼接页面元素,v-html多个指定位置文本高亮,为v-html拼接的字符串绑定onclick事件

vue3中使用v-html实现多个指定位置文本高亮,并在js拼接页面元素过程中为v-html拼接的字符串绑定onclick事件,解决直接绑定setup中函数的报错Uncaught ReferenceError: checkedBtn is not defined at HTMLSpanElement.onclick (nel:1:1)

2022-08-24 16:18:40 2319

原创 Vue3中的VueX持久化

1.下载持久化插件2.将store模块化,在src/store文件夹下新建modules文件,在modules下新建多个js文件3.使用vuex-persistedstate插件来进行持久化在vue3中以上使用到了modules分模块,在此补充:即使改模块未带命名空间namespaced:true,在使用store获取数据的时候仍然要加上模块名($store.state.mode1.name),其他gettersmutationsactions都在全局。带命名空间names

2022-08-23 14:25:15 1773

原创 vue拖动缩放组件(vue-drag-zoom) 增加禁止缩放拖拽功能

前段时间写了一个类似于百度ICOR,可拖拽缩放图片并在图片上框选文字的功能,这里的拖拽缩放功能就用到了vue-drag-zoom组件,组件是从npm下载的VUE2代码,放在VUE3+vite项目里面也是可以兼容的,但是组件仅提供了禁止缩放的API且存在一定问题。3.解决了频繁禁止与恢复拖拽缩放时,图片回到初始位置的问题。1.新增禁止拖拽API,与禁止缩放API整合。2.解决了缩放后图片不固定在中心点问题。

2022-08-22 16:00:12 2012

原创 Expected a JavaScript module script but the server responded with a MIME type of “text/html“.Strict

Failed to load module script: Expected a JavaScript module script but the server responded with a MIME type of "text/html". Strict MIME type checking is enforced for module scripts per HTML spec.vue3+vite项目中,在.vue文件内部引入了.js文件后报错

2022-08-22 13:06:21 16320 2

原创 Vite/Vue 配置路径别名 @表示根路径,点击实现快捷跳转

配置别名路径在.vue文件中点击下方路径可跳转至对应文件中,如果使用Vue : 在vue.config.js文件中进行如下配置,如果使用Vite : 在vite.config.js文件中进行如下配置。。。

2022-08-12 16:38:05 6123 2

原创 svg+js实现描点成框,并获取相对图片的坐标位置

获取图片中的相对位置,通过js或svg来完成在图片四个点后形成矩形框,并记录坐标,以及不同情况下获取到x轴与y轴坐标的方法:e.offsetX、e.clientX、e.pageX等

2022-08-04 13:28:24 2343

原创 Vue/React 展示JSON 可拷贝可展开

Vue/React在页面展示JSON格式数据可拷贝可展开,并附修改vue-json-viewer中my-awesome-json-theme样式代码

2022-08-01 10:39:04 2448

原创 解决Echarts中折线图多条线的x轴不一样

在做折线图的过程中遇到了后端返回多条x轴数据与series中的data对应,这里我需要分离出data数组内每个对象的createTime日期作为x轴数据。1.在遍历数组每一项后拿到所有x轴数据合并为一个数组。2.通过newSet去重后得到无重复的x轴数据。3.使用sort为数组排序。...

2022-07-27 13:56:15 5460

原创 vue中使用echarts折线图配置总结

最后附重点:如何添加一个平行于x轴的标线?1.取消鼠标移入折线图时的虚线指示器、2.改变legend形状及颜色样式、3. 为Y轴设置最大值与最小值的同时避免Y轴轴线消失、4.取消平行于X轴的Y轴横线与刻度线、6.取消折线图线段上面的圆点、7.让数据一样的折线段从同一起点出发:取消 stack: 'Total' 这一行...8.解决部分线段内部数据为空时,页面折线中断的问题......

2022-07-22 17:51:15 4036

原创 运用span-method巧妙实现多层table数据的行合并

vue中使用对elementUI的table数据进行合并行,给大家总结了十分简易的合并一层数据与两层数据的综合写法,解释充分,代码通俗易懂

2022-06-11 19:40:18 4102

原创 JS跟踪用户keyDown事件,实现点击单选,Ctrl多选效果

JS跟踪用户keyDown事件,鼠标点击tag标签后高亮显示,按下Ctrl键单击实现多选,在选中情况下再次单击后取消选择

2022-04-19 22:23:07 2169

原创 Vue+Element实现多个checkbox的全选与联动选择

Vue+Element实现多个checkbox之间的联动选择以及isIndeterminate全选状态的调整

2022-04-18 19:49:16 4111 1

原创 vue中数据滚动显示 实现Element-UI中el-table内数据的懒加载

1.挂在阶段监听el-table的scroll滚动事件2. 当table表格滚动条的位置+调试的固定高度+要显示数据的高度>=el-table-body(当前加载出的table数据总高度)时就可以向table数据源中push进新的数据了

2022-03-29 23:01:05 7246

原创 移动端如何实现Vant组件与rem适配?

大多数设计稿的原型都是以 iphone6 为原型,iphone6 设备的宽是 750,我们的设计稿也是这样. 但是 Vant 是基于 375 写的,所以如果你设置为 75 的话,Vant 的样式就小了一半。

2022-03-03 22:46:08 680 1

原创 Vue3和Vue2对比,我们如何选用?

Vue3带来的新变化 性能提升(零成本:从vue2切到vue3就享受到) 首次渲染更快,diff算法更快,内存占用更少,打包体积更小,.... 更好的Typescript支持(在vue下写TS更方便了) 提供新的写代码的方式:Composition API (需要学习成本) 这些Vue2.0的语法不能用了vue3.0对于2.0版本的大部分语法都是可以兼容的(之前是怎么写的,现在也正常写),但是也有一些破坏性的语法更新,这个大家要格外注意 1.移除了vu...

2022-01-12 22:07:49 12020 2

原创 前端高频面试题:谈谈你对原型链的理解√

要讲清楚这个问题,主要着重这几个方面:什么是原型对象、构造函数, 原型对象, 实例的三角关系图、原型链如何形成、在 JavaScript 中,每个对象中都有一个 __proto__ 属性,这个属性指向了当前对象的构造函数的原型。对象可以通过自身的 __proto__属性与它的构造函数的原型对象连接起来,而因为它的原型对象也有 __proto__,因此这样就串联形成一个链式结构,也就是我们称为的原型链。

2021-12-14 15:31:07 1875

原创 JS中的内存泄漏与垃圾回收机制

内存泄漏:就是用动态存储分配函数动态开辟的内存空间,使用完后没有及时回收,导致一直占据着内存单元,数量多了后就会造成内存泄漏。总结:垃圾回收虽然可以找到一些不再使用的局部变量回收,但是它无法对全局变量、Dom元素引用、闭包等进行回收处理,所以这也是导致内存泄漏的一个重要原因。

2021-12-14 14:52:59 1277 3

原创 React中的Hooks是什么?

Hooks:钩子、今天跟钩住,是React@16.8提供的新功能。

2021-12-10 20:53:02 3286 1

原创 Vue自定义指令 例:解决异常图片情况

全局自定义指令 v-on:keyup.enter="()=>{}" v-指令名:属性名.修饰符=’值‘ 定义 input v-xxxVue.directive('指令名',{ 自定义指令的生命周期 bind:绑定时,自定义指令绑定于相应dom时执行(类似于vue生命周期的beforeMount) bind(dom,obj,vnode){ dom:指令所在dom obj:{ 属性名

2021-12-07 16:14:56 854

原创 React的render 函数中的 this 指向详解

常见的 五种this 指向问题的解决方案。方法 1高阶函数:通过 this 来直接调用handleClick 并返回箭头函数。???? 柯里化:通过函数调用继续返回函数的形式,实现多次接收参数最后统一处理的函数编码形式。方法 2包裹一层箭头函数。箭头函数中的 this 指向“外部”,即 render 函数,而 render 函数中的 this 正是组件实例。方法 3使用 bind。扩展???? 关于 class 中的实例方法和原型方法?原型方法

2021-12-06 21:08:06 1752 1

原创 实现网站的国际化语言切换

1:安装 yarn add vue-i18n2:导入 在此路径 src/lang/index.js import VueI18n from 'vue-i18n'3:注册 import Vue from 'vue' Vue.use(VueI18n)4:实例化 const i18n=new VueI18n({ locale:'当前语言的标识', // en:英文 zh:中文 messages:{ // 语言包 ...

2021-11-27 20:17:12 2348 1

空空如也

空空如也

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

TA关注的人

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