- 博客(20)
- 问答 (1)
- 收藏
- 关注
原创 2021-09-18 JS把 字符串数组 转换成 整型数组
var dataStr = "1,2,3,4,5";//原始字符串 var dataStrArr = dataStr.split(",");//分割成字符串数组 var dataIntArr = [];//保存转换后的整型字符串 //方法一 dataStrArr.forEach(data => { dataIntArr.push(+data); }); console.log(dataIntArr); //方法二 dataIntArr = dataStrArr.map
2024-05-09 08:43:19
113
原创 对于多选表格,选中某一工序后,该工序及后续所有工序自动选择。
// 点击表格全选CheckBox@select-all="handleSelectAll"handleSelectAll(selection) { if(selection.length == 0) { // 取消全选 for(let item in this.tableData) { item.rowFlag = false; } } else { // 全选 for(let item in this.tableData) { item.rowFlag = tr
2024-05-09 08:40:40
104
原创 some(),every(),forEach(),map(),filter()区别
map():返回一个新的Array,每个元素为调用func的结果。新数组的长度和原来的是一样的,他只不过是逐一对原来数据里的每个元素进行操作。filter():返回一个符合func条件的元素数组。筛选条件,把数组符合条件的放在新的数组里面返回。新数组和原来的数组长度不一定一样。some():返回一个boolean,判断是否有元素是否符合func条件。数组里面所有的元素有一个符合条件就返回true。every():返回一个boolean,判断每个元素是否符合func条件。数组里面所有的元素都符合才返回.
2024-05-09 08:39:53
165
原创 vue vue-router 返回到指定页面
订单列表页(A)可进入订单详情页(B),B可进入订单支付页(C),在C支付完成后返回到B,在B页面返回又返回到C,B和C来回跳,此时期待B返回到A,满足C->B,B->A。使用该方法可满足需求,但是手机移动端右滑返回到上一页面会有卡顿,体验十分不好。router.replace 就可以了。这样只在入口处 使用 this.
2024-05-08 17:40:28
266
原创 vue中,页面使用<keep-alive>缓存,页面切换不调用beforeDestroy和destroyed
不设置keep-alive,离开当前路由时,会调用beforeDestroy和destroyed来销毁。当设置keep-alive之后,不会直接调用这组销毁生命周期函数,而是在生命周期函数中新增两个:activated和deactivated。第一次进入页面时,生命周期函数执行简单来说是这样的:当退出时,会触发deactivated()函数;当再次进入该页面时,只会执行activated()函数。配合导航守卫,手动调用生命周期销毁函数beforeRouteLeave (to, from,
2022-03-29 14:27:24
3600
1
原创 分割条拖动改变div宽度
1、需求拖动分割条可以改变div宽度2、实现html<div ref="boxContent" class="h100p flex-a-center-j-space-between"> <!-- 第一列 --> <div ref="firstContent" class="h100p content">第一列</div> <!-- 分割线 --> <div ref="dividerLeft" cl
2022-03-28 14:41:42
1097
原创 el-table使用type=“expand”没有数据时隐藏展开按钮
步骤一:添加className<el-table ref="table" :data="tableData" :expand-row-keys="expandRowKeys" :row-class-name="getRowClass" @expand-change="handleExpandChange"></el-table>// 使用getRowClass针对每一行添加类getRowClass(row) { let data = row.row; let
2022-02-15 15:36:41
3122
2
原创 异步编程解决方案
回调地狱this.$http.post(url).then(res => { this.$http.post(url1).then(res1 => { this.$http.post(url2).then(res2 => { ... }); });});使用Promise// resolve成功 reject失败function init() { return new Promise((resolve, reject) => { this..
2021-12-21 15:18:55
225
转载 el-table实现拖拽效果
一、概述Sortable.js是一款优秀的js拖拽库,支持IE9及以上版本IE浏览器和现代浏览器,也可以运行在移动触摸设备中,不依赖jQuery,支持AngularJS、React、Vue框架和任何CSS库,如bootstrap、elementUI,可以用来拖拽div、table等元素。二、安装插件npm i -S vuedraggablevuedraggable依赖Sortable.js,我们可以直接引入Sortable使用Sortable的特性。vuedraggable是Sortable的一
2021-11-12 17:12:55
5589
4
转载 解决vue报错this.$refs[xxx].validate is not a function
正常情况下报错this.$refs[xxx].validate is not a function可能我们使用nextTick 延迟加载去解决,如若使用了nextTick依旧报错当使用this.$refs[xxx].validate 的时候,如果是xxx为一个变量传进来的,如下这种情况下,是不需要加[0]的这种情况下必须是this. $refs[xxx][0]否则会如标题的报错...
2021-10-27 17:48:32
11028
原创 解决 el-form 回车触发刷新页面
当一个 form 元素中只有一个输入框时,在该输入框中按下回车应提交该表单。解决办法是在 <el-form> 上添加 @submit.native.prevent 属性<el-form @submit.native.prevent></el-form>
2021-10-26 17:44:09
503
原创 el-table默认展开行
<template> <el-table ref="table" :data="tableData" :row-key="getRowKey" :expand-row-keys="expandRowKeys" @expand-change="handleExpandChange"> <el-table-column type="expand" fixed> <template slot-scope="scope"> <..
2021-10-26 16:22:36
2794
原创 解决刷新页面vuex数据获取不到的问题
现象:一进入页面可以在mounted中获取到vuex中的数据,mounted() { console.log('???? ~ this.$store.state.user.companyId', this.$store.state.user.companyId);}但是刷新页面后就获取不到了。解释:刷新页面vue实例重新加载,store被重新赋值,要想存储数据就必须存储在外部。解决思路:在用户登录之后,获取到用户信息,在存储store数据的同时,再存储到localStorage中。
2021-10-26 15:43:31
6988
原创 el-table el-form 双重循环表单校验
<div v-for="(item, index) in form.list" :key="index"> <el-table ref="tableRef" :data="item.tableData"> <el-table-column label="测点" prop="processNo"> <template slot-scope="scope"> <el-form-item :prop="'list.' + index + '
2021-09-18 16:12:42
662
1
原创 el-table 合并单元格
getSpanArr(data) { this.objColspan = {}; let colPos = 0; for (var i = 0; i < data.length; i++) { this.objColspan[i] = []; let filterData = JSON.parse(JSON.stringify(data[i])); let objValues = []; // keys push到
2021-09-18 16:09:35
80
原创 根据peopleid 判断table勾选回显
// 根据peopleid 判断table勾选回显let rowArr = this.peopleTable.tableData.filter(item => this.form.dispatchPeopleAddParamList.some(v => item.id == v.id));rowArr.forEach(item => { this.$nextTick(function() { item.rowFlag = true; this.$
2021-08-11 14:36:47
85
原创 解决 @keyup.native.enter 第一次触发时,会刷新页面 的问题
@keyup.native.enter 第一次触发时,会刷新页面原因:事件包裹在form表单中,enter事件默认触发了表单的提交,导致页面刷新解决:在el-form标签中加上 @submit.native.prevent,阻止表单的默认行为<el-form class="public-form card-form" :model="cardForm" inline label-width="112px" label-position="top" @submit.native.prevent&g
2021-08-11 14:16:40
4701
1
原创 ES6数组根据对象的某个属性去重
/** * 根据数组对象的某个字段去重 * item.name 是[{name:1}] 根据每条数据的name值来去重 * */unique(arr,val) { const res = new Map(); return arr.filter(item => !res.has(item[val]) && res.set(item[val], 1))}使用方法:this.answerLiScore = this.unique(this.answerLiScor
2021-08-11 14:16:24
459
空空如也
iview table组件使用分组表头后,导出时只能导出children部分吗?
2020-06-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人