基于Vue+element-ui 的Table二次封装的实现
发布时间:2020-12-17 02:16:27 所属栏目:百科 来源:网络整理
导读:本人第一次写这个 写的不好还望指出来 作为一个由于公司产品的升级然促使我从一个后端人员自学变成前端的开发人员 ! 公司做的数据管理系统所以离不开表格了 然后表格样式统一啥的就想到封装一个element-ui 里面的table+Pagination了 效果图 表格组件的引入
本人第一次写这个 写的不好还望指出来 作为一个由于公司产品的升级然促使我从一个后端人员自学变成前端的开发人员 ! 公司做的数据管理系统所以离不开表格了 然后表格样式统一啥的就想到封装一个element-ui 里面的table+Pagination了 效果图 表格组件的引入与使用 使用插槽slot 使用起来就和原来的table一样了 {
this.exporttableData = re.data;
this.tableData4 = [];
re.data.map(item => {
this.tableData4.push({
name: item.fldTableDesc,point: {
visible: false,value: ''
},item: {
visible: true,value: item.ItemList
}
})
})
},(error) => {
this.$message({
customClass: 'el-message_new',message: error,type: 'error'
});
})
},handleSelectionChange(val) {
console.log(val)
this.multipleSelection = val;
},focuspoint(val) {
this.currentpoint = val;
},focusitem(val) {
this.currentitem = val;
this.itemdialogshow = true;
},itemconfirm() {
this.itemdialogshow = !this.itemdialogshow;
},itemhandleClose(done) {
this.itemdialogshow = false;
},ItemGroupSelectchange(val) {
this.checkeditem = val;
console.log(this.checkeditem);
let groupitemcontent = [];
val.map(item => {
groupitemcontent.push(item.fldItemName);
})
this.currentitem.value = groupitemcontent.join(',');
},submit() {
if (this.multipleSelection.length > 0) {
let message = "";
let data = [];
let name = "";
this.multipleSelection.map((item,index) => {
name = item.name;
let str = item.name;
let info = false;
if (item.item.visible && item.item.value == "") {
message += `表[${str}]请选择因子`;
info = true;
}
if (item.point.visible && item.point.value == "") {
if (info) {
message += `、请选择测点/断面!`;
} else {
message += `表[${str}]请选择测点/断面!`;
}
info = true;
}
if (info) {
message += "
" } data.push({ "AutoID": "1","STCode": "","PCode": "","RCode": "","RScode": "","GDCODE": "","type": this.moduletype,"itemcodeList": item.item.value.split(',').join('^'),"path": `${this.path.TempletExportSetting}${this.moduletype}.json`,"IsNeedNullData": "Y" })
} else { comTable组件 |