自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vue项目突然报错 error Insert `⏎·········` prettier/prettier

解决方法,在.eslintrc.js最后添加一行:'prettier/prettier': 'off',

2024-03-22 11:30:14 360

原创 实现控制layui表格某些特定条件的行不让选择的功能

在表格渲染完的done回调中,监听全选复选框和每行复选框,实现全选时所有可选行勾选,可选行全部勾选时全选复选框自动勾选,不是全选时全选复选框自动取消勾选。title定义一个name为check_all,lay-filter为checkall的复选框,内容定义#checkbd模板,但是layui并没有自带这样的功能,设置表头属性type后无法针对某一行进行判断。注意lay-filter不能用含下划线的字符串,虽然官网说的是任意字符。

2024-03-20 10:16:05 402

原创 浏览器插件实现国税网自动登录,以及解决浏览器记住密码会自动填充表单无法修改的问题

所有这个方法对国产浏览器无效,测试发现有这两个属性的话,谷歌浏览器的表现是会在输入框下面有保存过的密码可供选择,而不是直接覆盖,所以应该是国产浏览器直接无视了这些属性。之前的解决方案是pupptteer模拟登录一遍拿到cookie等登录凭证后,保存到数据库,然后插件请求接口拿到cookie,直接写入浏览器,但是国税网登录新版改版,单单设置cookie很多功能会失效。公司的做账系统,用户在系统里设置保存了国税网的账号密码以后,下次点击进入国税网,能够直接进入国税系统。解决方法:每次先清除对应的登录凭证。

2023-11-09 09:47:43 367

原创 layui数据表格实现表格中嵌套表格,并且可以折叠展开

1、最外层的表格先渲染,在done回调中向每个tr后面插入一个用来嵌套子级表格的tr。tr的class和table的id需要用索引 i 关联。3、最后监听箭头显示和隐藏对应的表格。2、插入完成后再渲染所有的子级表格。

2023-09-01 10:19:07 3948 4

原创 js时间格式化精确到毫秒

【代码】js时间格式化精确到毫秒。

2023-04-07 11:46:32 1562 1

原创 ele-admin产品的ele-pro-table在第一次正常加载数据,第二次返回错误时仍然显示第一次数据的问题。

问题出现在,比如用户加载第一页返回了正常的十条数据,但是在加载第二页的时候报错了,我们返回了一条错误信息,这个时候希望页面上显示的是错误信息。但实际情况是页面上显示的任然是第一页的数据,没有任何报错。反过来却不会出现问题。于是猜想,应该是当后续出现报错的时候,组件没有清空第一页的data,所以表格也就没更新。于是找到ele-admin组件依赖中相关的代码,在报错的时候及时清空tableData即可。当初始化第一次返回正常的数据数组或者报错信息,页面上都能正常显示。

2023-02-20 16:48:41 1736

原创 前端下载文件时处理后端有可能返回文件流,有可能返回报错信息的情况。

当返回信息时我们想根据res.data来判断是文件流还是JSON信息来进行对应的操作时会发现此时得到的res.data都是一个Blob对象,这是在接口请求时就定好了,改变不了的。这个时候我们可以将Blob转为String字符串,尝试使用JSON.parse反序列化,如果存在错误信息 msg字段,那么就弹出信息提示,否则的话都走下载文件流程。问题描述:项目中导出excel向后端请求接口,当存在需要导出的文件时,后端直接返回文件流。当出现错误信息时,后端返回错误信息,前端需要弹出提示用户。

2022-12-21 15:13:07 2580 3

原创 js实现页面元素的拖拽

平时在我们页面上,经常会悬浮着一些功能按钮,如帮助,联系客服等,按钮的显示比较简单,用定位悬浮在自己需要的位置上就行,比如下面的页面上我们展示一个帮助的按钮,用户点击后可以展示一些帮助的信息: 代码:但是这样定位一般是固定在这个位置,如果这时候刚好【帮助按钮】挡住了这个位置原本有的其他操作按钮,那么我们就需要能够把【帮助按钮】拖开,不影响原本页面上的操作。一般实现拖动的思路是:在【帮助按钮】上鼠标按下时,记录下当前的坐标,以及原本相对于父元素的位置,然后监听【帮助按钮】的鼠标移动事件【onmousem

2022-06-22 14:14:50 3022 2

原创 解决webstorm在创建文件时没有写后缀,然后删除这个文件后,之后所有创建的同名文件带后缀的文件都无法识别类型的情况

出现情况:比如我要建一个index.vue,结果忘记打后缀,变成了index文件,然后删除了这个文件,之后再在项目中新建index.vue文件,这时候不会被识别成vue文件,文件时灰色的,里面的代码全是文本格式,没有高亮等。解决方法:按照如图所示的路径找到那个文件,然后移除掉即可, 比如我新建出错的repairRecord文件,在这里找到移除掉...

2021-02-04 15:24:39 611 2

原创 实现密码等明文的加密传输以及加密存储

需求:用户在登录时密码经常使用明文传输,在不安全的网络环境下,很容易造成密码泄露,而密码直接存储在数据库中,如果数据泄露,也会造成安全问题。解决方法:前端给后端传输密码关键信息时,进行加密后再传输,后端解密验证,然后将密码加密后再存储到数据库中。实现思路:采用RSA非对称加密加密和解密密码传输,采用哈希加盐算法加密密码并存储1.前端需要传输密码时,先向服务器获取一个加密公钥(加密密钥对由后端生成,以公钥为key,私钥为value存储在redis中)。2.获取到公钥后,将密码进行加密,并将

2021-02-04 15:19:26 4830

原创 从详情页返回列表页记住滚动条位置

需求,从blog列表展示页进入单条blog详情页后返回不刷新,并且保留滚动条的位置。1.返回不刷新使用keepAlive。(多级路由/菜单会导致keepAlive失效)$route(to, from){ if (to.meta.keepAlive){ !this.include.includes(to.meta.name)&&this.include.push(to.meta.name); }

2020-11-18 10:24:33 602

原创 spring boot使用@RequestBody无法接收含有List参数的对象,报错的解决办法

报错:com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `com.zongmao.school_v2.entity.Shop` (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator)

2020-11-13 09:12:18 11371 4

原创 Vue项目实现切换主题色思路

需求:用户通过取色器选择自己喜欢的颜色,替换项目中的主题色实现效果:实现思路:在项目中使用的是less,使用@themeColor定义了主题色,便想着尝试用js修改less的变量即可,但查询了一下只知道有less.modifyVars方法可以修改,但没有详细的说明,顺便查到了可以修改js可以修改原生css的变量,而且简单易懂,便尝试使用css来定义主题色并设置修改。首先在App.vue中设置主题色:<style lang="less">#app { --the

2020-11-03 17:22:15 8046 7

原创 仿写魅族PC端官网

仿写了魅族的电脑端的官网,主要写了首页,详情页,订单也,购物车页,登录页,订单详情页,目的是为了联系布局,所以没有写后台数据接口,使用了vue + element UI效果图:首页:订单详情页:登录页:购物车页:订单页:订单详情页(弹窗):github:https://github.com/zongmao-github/meizu...

2020-11-03 10:22:17 1236 1

原创 vue cli配置打包和代理等

// vue.config.js 配置说明//官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions module.exports = { // 它支持webPack-dev-server的所有选项 devServer: { host: "0.0.0.0", port: 8080, // 端口号 https: false, // https:{type:Boolean} o.

2020-10-29 16:31:56 778 1

原创 springboot 2.0实现跨域

通过实现WebMvcConfigurer接口的addCorsMappings()方法实现/** * @Author ZongMao * @Description //跨域支持 * @Date 2020/10/23 15:42 **/ @Override public void addCorsMappings(CorsRegistry registry){ registry.addMapping("/**") .

2020-10-23 15:48:53 85

原创 js防抖立即执行和非立即执行的理解

立即执行:即多次触发事件,第一次会立即执行函数,之后在设定wait事件内触犯的事件无效,不会执行。非立即执行函数: 多次触发事件,只会在最后一次触发事件后等待设定的wait时间结束时执行一次。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initi

2020-10-21 10:32:49 3496

原创 关于js防抖的思路理解以及addEventListener和onclick调用防抖的区别的理解

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title></head><body> <but...

2020-10-21 10:21:24 892

原创 禁用element-ui calendar 点击事件

需求描述:原本的日历组件不是本月的日期是灰色的,且点击后会跳转到对应的月份,现在不想它跳转,需要禁用它的点击事件方法:使用css的pointer-events:none属性即可,把不是当前月份的日历表格的td属性修改.el-calendar-table{ width: 100%; height: 100%; &:not(.is-range){

2020-10-09 11:59:52 6189 3

原创 element UI表单验证不是使用v-model绑定值而是使用js赋值,验证遇到的问题

如图新增视频是上传后将返回的url赋值给对应的字段,但明明已经赋值了,表单验证还是不通过。最后发现是对应的字段没在data中定义,用v-model绑定的则不需要定义

2020-09-27 15:20:25 1133

原创 A JNI error has occurred, please check your installation and try again

idea中报错:A JNI error has occurred, please check your installation and try again原因:依赖设置为<scope>provided</scope>,不会被添加到classpath巴拉巴拉,貌似是官方bug解决方法:勾选如图选项即可...

2020-09-25 15:19:37 317

原创 vue+elementUI走马灯组件+html <video>实现轮播视频,并自定义视频播放按钮完整demo

效果:代码:html部分:<el-carousel :interval="5000" arrow="always" :autoplay="autoplay" :indicator-position="autoplay?'':'none'" @change="getIndex"> <el-carousel-item v-for=".

2020-09-23 11:39:02 10480 14

原创 element el-tree组件设置出现横向滚动条

.el-tree { overflow: auto; height: calc(100% - 0px); >.el-tree-node { /*设置横向滚动条*/ min-width: 100%; display: inline-block; } }

2020-09-22 15:12:51 2517

原创 Filter拦截器读取一次流数据之后,后面Controller中无法再读取数据

因为流数据只能读取一次

2020-09-16 11:53:11 583

原创 el-tree筛选搜索父节点中的关键字会过滤掉不含关键字的子节点的解决方法

场景:需要一个搜索功能,后端没有给接口,就是用el-tree组件自带的filter过滤方法但发现如果搜索的关键字只在父节点中而子节点中没有,会把子节点过滤掉不显示,比如搜索上方的“甪棉锦港泵站”如图,它所包含的子节点全部没有了,这肯定不是我们要的效果在过滤方法中添加判断方法,判断节点是不是属于已经符合的父节点的子节点,是的话,也返回true即可//筛选节点 filterNode(value, data,node) { if (!va.

2020-09-14 12:56:28 2006

原创 子组件中watch监听不到props的变化

2020-09-07 09:20:13 2259

原创 树形结构数据递归找出符合条件的第一个叶子节点

最近遇到一个需求,使用ele-tree组件,需要默认选中第一个子节点。数据结构如下,需要找到第一个isLeaf == true的叶子节点对象,此处即闸站21const test = [ { name: '泵站', id: 'bengzhan', isLeaf: false, children: [] }, { name: '泵站',

2020-08-25 16:02:30 3358 1

原创 数据库的脏读、不可复读、幻读

脏读:读取到别人位提交的数据;不可复读:自己正在进行事务的时候,先前读取的数据被别的事务改了,再去读取就发现跟先前的不一样;幻读:第一次读的时候没有记录,别的事务这时候插入了这条数据,再去更新这条数据,可以更新,再去读取,也可以读取。但直接读取不更新读不到。(疑问:既然查不到这条数据,说明没有,为什么还要去更新?)...

2020-08-24 17:13:33 165

原创 sql查询起别名为中文的时候

直接使用中文会报错,加上' '引号也会显示,使用[]即可

2020-08-24 15:53:27 7876 2

原创 js实现深拷贝

使用递归函数function deepClone(obj){ let objClone = Array.isArray(obj)?[]:{}; if(obj && typeof obj==="object"){ for(key in obj){ if(obj.hasOwnProperty(key)){ //判断ojb子元素是否为对象,如果是,递归复制 if(obj[.

2020-08-13 16:17:37 79

原创 不使用循环和递归求正整数每位数字相加的和

2020-08-07 10:18:34 237

原创 map函数和parseInt函数搭配使用的问题

2020-07-20 10:56:55 99

原创 vue中不能直接在html中使用import的js方法的问题和解决方法

这是common.js中的方法然后我在index.vue中引用它然后在子组件中使用,希望能将得到的fileName显示在链接中间结果发现报错,getFileDetails is not defined尝试在methods中重写一个方法,在方法中使用它,再在HTML中调用方法,发现是可以的百度一番之后发现了这位老哥的解释:原链接也就是只需要在methods里面再声明一下这个方法就行特此记录一下...

2020-07-17 14:35:23 12328 1

原创 前端点击按钮下载文件的方法

1.window.open()1.创建form表单提交

2020-07-17 10:11:53 3934

原创 element上传文件按钮和其他按钮显示在同一行

效果:代码:重点:给需要触发上传文件的button按钮加上slot=“trigger”,否则的话点击任意一个按钮都会上传文件官方文档说明:

2020-07-17 09:58:13 2869

原创 vue中实现动态增加、删除子组件,并获取子组件的值(或批量执行子组件的方法)

当点击添加入库时,自动增加一个相同的form表单组件,当点击删除时,删除当前的组件add-wu-zi即为组件,给items默认有一个对象,对象中默认带有一个nowTime属性,这个之后会说当点击添加入库时,给items增加一个对象,然后组件v-for遍历items即可,但是:key不能使用index,因为使用了index,在你移除掉一个组件的时候,index会重新排序,会修改,导致你删除的组件永远是从最后一个删除,不会删除你想要删除的那个组件。所以我这里增加了nowTime...

2020-07-10 16:38:43 3181 1

原创 [Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent c

[Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or computed property based on the prop's value. Prop being mutated: "showAddBox"在使用element ui的dialog弹窗时,点击右上角x号关.

2020-07-10 15:49:52 522

原创 笔记实践:map、filter、reduce三大高级函数

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title></head><body> <!-- map、.

2020-07-10 08:33:28 87

原创 笔记:vue在scoped属性中修改覆盖elementUI样式

使用深度选择器/deep/在element ui的类名前面加上/deep/即可还可以外类名>>>element 类名的形式,但好像在less和sass等预加载器中不起作用

2020-07-09 11:36:38 682

原创 (笔记)vue通过当前路由来判断活动的菜单,刷新不失效

效果:当前选中的菜单背景色改为深色,通过路径来判断在data中给imgs数组的对象添加link属性和对应的值在style中设置当前活动菜单的背景色在绑定class时通过判断当前路径中是否含有link来添加nownav class...

2020-07-07 16:53:52 457

空空如也

空空如也

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

TA关注的人

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