1、封装部分
直接复制粘贴吧,里面内容有点杂可以把不需要的内容去掉,template里面有点啰嗦,懒得改了
<template>
<!-- table的增删改查 -->
<div class="tableRow">
<template>
<el-table
ref="editTable"
:header-cell-style="{
background:'#f2f9fc',padding:'10px 10px'}"
:data="data"
class="tableColumn"
v-on="$listeners">
<el-table-column
v-for="(item,index) in columns"
:key="index"
:label="item.label"
:prop="item.prop"
:width="item.width"
align="center"
>
<template slot-scope="scope">
<span v-if="item.label==='序号'" >{
{
scope.$index+1 }}</span>
<!-- 上传文件 -->
<LkUpload v-else-if="item.type==='upload'" v-model="scope.row[item.prop]" :fileIdKey="id" :fileNameKey="name"></LkUpload>
<!-- 下拉选择 -->
<LkSelect
v-else-if="item.type==='isHave'"
v-model.trim="scope.row[item.prop]"
:data="isHave"
label-key="name"
value-key="name"
filterable
style="width:100%"
placeholder="请选择"
@change="changeValue(scope.row[item.prop],index)"
/>
<LkSelect
v-else-if="item.type==='select'"
v-model.trim="scope.row[item.prop]"
:data="assetTypeList"
label-key="name"
value-key="name"
filterable
placeholder="请选择"
style="width:100%"/>
<!-- 输入框 -->
<lk-input v-else-if="item.type==='input'" v-model.trim="scope.row[item.prop]" placeholder="请输入" :maxlength="item.maxlength" />
<el-input
v-else-if="item.type==='textarea'"
v-model.trim="scope.row[item.prop]"
type="textarea"
maxlength="1000"
placeholder="请输入"
>
</el-input>
<!-- 数字类型 -->
<el-input v-else-if="item.type==<