1. el-table 嵌套 el-image 导致侧边栏滚动条失效
网络上有说是因为el-table内容溢出导致的,也可能是el-image中的clickHandler覆盖body的overflow属性导致的。
遇到的实际情况是,el-table中的el-image在不设置width/height的情况下,需要重新刷新页面才会展示el-table的侧边滚动条。遗憾的是在单独element-ui的环境下,并没有成功复现这个bug,所以具体原因还不清楚。
解决方案是给el-image设置width/height。
<el-table-column label="图片" width="85" fixed="left" align="center">
<template 2. -scope="scope">
<div class="my-el-row">
<el-image :src="scope.row.picurl" style="width: 4vw;height: 4vw;" />
</div>
</template>
</el-table-column>
2. axio提交数据后刷新数据不是最新的
提交数据后想要看到最新的数据,需要将“刷新函数”写在 .then(reponse => { '执行刷新' }), 若是在外侧,在axio请求成功之前,函数照样执行,不能保证刷新到最新数据
3. vue 项目传参:
(1) 一般直接使用json格式传递即可:{参数名 : 参数值}
(2) 复杂参数,例如列表,使用 {参数名: JSON.stringify(参数值)},然后后台再进行json解析
4. 使用SortableJS对el-table进行排序时容易遗漏row-key
5. textarea参数使用GET方法传递给后台会丢失换行符,应该使用POST方法
(这一点应该不属于vue)
6. 同router.path的情况下组件复用的问题:
统一处理方法是,tagview不可复用,每次添加新的tagview时,移除相同path的其他view,避免后续编程人员因为忘记监听query/params变化导致错误
7. 常用组件易错点:
- el-table的Event: select与select-all都需要处理
8. 执行后运行接口问题:
检查portfinder包的版本
检查环境变量是佛有port-*之类的变量
9. Header参数编码问题
因为系统内部分参数,如username是中文,而采用http-header中存储,而http-header只支持英文字符,因此在需要判断header参数时,应将参数写在body中。例如接口中判断登录人时,应前台body写:{username: this.$store.username}
10. el-popover手动关闭问题
el-table-column添加了 fixed="left" 或 fixed="right"后,el-popover无法使用id进行关闭
11. 页面缓存
要保证路由中的name与组件的name一致
{
path: '....',
component: () => import('@/views/..../...'),
name: 'ThisNameMustBeSame',
meta: { title: '...', icon: 'tab', noCache: false, roles: ['...'] }
}
export default {
name: 'ThisNameMustBeSame'
}
-
elment-ui走马灯总有滚动条的问题 el-carousel滚动条问题
需要设置height值
<el-carousel height="100px" >
-
el-input的change事件与input事件的区别
change事件仅“仅在输入框失去焦点或用户按下回车时触发”
input事件是“在 Input 值改变时触发”
-
JS中的计算问题
和java一样,js中涉及到数值计算,要用bigNumber
-
时间格式问题
-
常用数组操作
注意区分slice与splice
**slice()定义:**从已有的数组中返回你选择的某段数组元素
**slice()语法:**arrayObject.slice(start,end)
**①:**start表示从何处开始选取,end表示从何处开始结束选取,表示一个选取的范围
**②:**start可以为负数,此时它规定从数组尾部开始算起的位置。也就是-1 ,指最后一个元素,-2 指倒数第二个元素,以此类推
**③:**end如果没有被指定参数,数组会包含从 start 到最后一个数组元素的所有元素
**④:**slice()方法不会修改数组本身,而是返回所选取范围的数组元素。如果想删除数组中的某一个元素,需要使用splice()
splice()
**splice()定义:**从数组中添加或删除元素,然后返回被删除的数组元素。
**splice()语法:**arrayObject.splice(index,howmany,item1,.....,itemX)
**①:**index表示从什么位置开始添加或删除数组元素
**②:**howmany表示删除的元素数量,如果为0,则表示不删除数组元素
③:item1,.....,itemX表示新增的数组元素
**④:**splice()方法会改变原始数组
-
element-ui table合并单元格问题
函数返回值表达的不同含义
// 舍弃该单元格 { rowspan: 0, colspan: 0 } // 保留,不跨单元格 { rowspan: 1, colspan: 1 } // a > 1, b > 1时,跨单元格 { rowspan: a, colspan: b }
-
TODO
-
TODO