上传文件限制大小或个数
限制的原理是先上传(before-upload)后删除,如果上传限制的同时还用到before-remove的话,用户就可以阻碍删除限制的文件,当用户点了取消删除按钮,限制的文件则还是上传了。这样限制就中return false或true就失效了。
解决:在data或computed中添加一个字段flag设置状态,在before-upload中判断条件修改flag状态,on-remove中设置flag,最后根据flag状态决定是否删除
2.table表头自定义
slot方式:如果自定义中用到data或computed中的变量,且在页面中变量不是响应的时,应采用render-header方式,就可以解决
两种 1.slot
<template slot="header">
<el-select >
<el-option label="全部" value=""></el-option>
<el-option label="禁用" value="0"></el-option>
<el-option label="启用" value="1"></el-option>
</el-select>
</template>
2.render-header=“handleRendeHeader”
handleRendeHeader(h,{column,$index}) {
const filters =[{text:'全部',value:''},{text:'禁用',value:'0'}{text:'启用',value:'1'}]
return h('el-select', {
on:{
input:(value) => {
this.checkStatus = value
},
change:(value) => {
this.hanbleSelectChange(value)
}
},
props: {
value:this.checkStatus
}
},[
filters.map(item => {
return h('el-option', {
props: {
value:item.value,
label:item.text
}
}
})
]
}
3.query传参数,在页面刷新的时候可能会将query中参数的类型发生转换(如number转string)
解决:再把参数转为number