Commit b8d24f9a authored by CenXinYi's avatar CenXinYi

优化Table组件,解决浏览器控制台报错问题

Signed-off-by: 's avatarCenXinYi <2810162984@qq.com>
parent b8ac7027
...@@ -81,32 +81,10 @@ export function BaseTableArguments(selection, loading, processList, queryParams, ...@@ -81,32 +81,10 @@ export function BaseTableArguments(selection, loading, processList, queryParams,
} }
// TODO: 组件表单所需的所有参数 // TODO: 组件表单所需的所有参数
export function BaseTableArgumentsTest(nIndex, selection, loading, List, queryParams, columnData) { export function BaseTableArgumentsTest(listName, loading, List, queryParams, columObj) {
// TODO: 选择框是否需要存在 (selection判断表单选择框是否需要存在) this.listName = listName
if (typeof selection !== 'boolean') { this.loading = loading
console.warn('selection下拉框参数的type类型错误!请检查后重新赋值')
} else {
this.selection = selection
// TODO: 选择框 (根据条件是否可选)
this.selectable = (row, index) => {
if (row.isSwitch) {
return true
}
}
}
// TODO: 加载进度 (判断是否显示加载进度)
if (typeof loading !== 'boolean') {
console.warn('loading进度条参数的type类型错误!请检查后重新赋值')
} else {
this.loading = loading
}
// TODO: 查询参数 (判断查询条件是否符合类型)
if (queryParams instanceof queryParamsType) {
this.queryParams = queryParamsType
}
this.columnData = columnData
this.List = List this.List = List
this.queryParams = queryParams
this.columObj = columObj
} }
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
border border
:data="allTableArguments.List" :data="allTableArguments.List"
style="width: 100%;" style="width: 100%;"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange(row)"
> >
<el-table-column type="index" label="序号" width="50" /> <el-table-column type="index" label="序号" width="50" />
...@@ -46,17 +46,17 @@ ...@@ -46,17 +46,17 @@
<!-- 图片展示 --> <!-- 图片展示 -->
<el-popover trigger="hover" placement="top" popper-class="popper"> <el-popover trigger="hover" placement="top" popper-class="popper">
<img v-if="column.image" :src="viewUrl + row[column.prop]" alt=""> <img v-if="column.image" :src="viewUrl + row[column.prop]" alt="">
<el-image v-if="column.image" slot="reference" :src="viewUrl + row[column.prop]" /> <el-image v-if="column.image" :src="viewUrl + row[column.prop]" />
</el-popover> </el-popover>
<!-- 图片数组 --> <!-- 图片数组 -->
<el-popover v-if="column.imageArr" trigger="hover" placement="top" popper-class="popper"> <el-popover v-if="column.imageArr" trigger="hover" placement="top" popper-class="popper">
<img v-if="row[column.prop].length>0" :src="row[column.prop][0]" alt=""> <img v-if="row[column.prop].length>0" :src="row[column.prop][0]" alt="">
<el-image v-if="row[column.prop].length >0" slot="reference" :src="row[column.prop][0]" :preview-src-list="row[column.prop]" /> <el-image v-if="row[column.prop].length >0" :src="row[column.prop][0]" :preview-src-list="row[column.prop]" />
</el-popover> </el-popover>
<!-- 可编辑input,仅在text默认展示类型才可编辑--> <!-- 可编辑input,仅在text默认展示类型才可编辑-->
<el-input v-if="column.editRow === $index" v-model="row[column.prop]" v-focus @blur="editInputBlur(row,$index,column.prop,columIndex)" /> <el-input v-if="column.editRow === $index" v-model="row[column.prop]" @blur="editInputBlur(row,$index,column.prop,columIndex)" />
<!-- 操作按钮 --> <!-- 操作按钮 -->
<span v-if="column.isOperation" class="processListBtns"> <span v-if="column.isOperation" class="processListBtns">
<span v-for="(operations, index) in column.operation" :key="index"> <span v-for="(operations, index) in column.operation" :key="index">
...@@ -84,13 +84,7 @@ export default { ...@@ -84,13 +84,7 @@ export default {
allTableArguments: { allTableArguments: {
type: BaseTableArgumentsTest, type: BaseTableArgumentsTest,
default: () => { default: () => {
return { return new BaseTableArgumentsTest()
selection: Boolean,
loading: Boolean,
queryParams: Object,
List: Array,
columnData: Array
}
} }
}, },
nIndex: { nIndex: {
...@@ -107,6 +101,9 @@ export default { ...@@ -107,6 +101,9 @@ export default {
} }
}, },
methods: { methods: {
handleSelectionChange(row) {
this.$emit('handle-selection-change', row)
},
handleDetail(row) { handleDetail(row) {
this.$emit('handle-detail', row) this.$emit('handle-detail', row)
}, },
......
...@@ -113,7 +113,6 @@ ...@@ -113,7 +113,6 @@
<component <component
:is="BaseTable" :is="BaseTable"
:key="queryParams.rows" :key="queryParams.rows"
:n-index="nIndex"
:all-table-arguments="allTableArguments" :all-table-arguments="allTableArguments"
@handle-detail="handleDetail" @handle-detail="handleDetail"
/> />
...@@ -164,7 +163,6 @@ ...@@ -164,7 +163,6 @@
<!-- TODO: 这里是 库状态为废弃时才会触发显示的模块 --> <!-- TODO: 这里是 库状态为废弃时才会触发显示的模块 -->
<transition name="fade-transform" mode="out-in"> <transition name="fade-transform" mode="out-in">
<el-row v-if=" activateAbandonedState " style="height: 160px"> <el-row v-if=" activateAbandonedState " style="height: 160px">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="fq_ys:" prop="fq_ys"> <el-form-item label="fq_ys:" prop="fq_ys">
...@@ -189,31 +187,32 @@ ...@@ -189,31 +187,32 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<transition /> </transition>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="操作员:" prop="userName"> <el-form-item label="操作员:" prop="userName">
<el-input v-model.trim="singleDetails.userName" :readonly="isReadOnly" /> <el-input v-model.trim="singleDetails.userName" :readonly="isReadOnly" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="操作时间:" prop="createDate"> <el-form-item label="操作时间:" prop="createDate">
<el-input v-model.trim="singleDetails.createDate" :readonly="isReadOnly" /> <el-input v-model.trim="singleDetails.createDate" :readonly="isReadOnly" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</transition></el-form> </el-form>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { listLog, findSingleLogDetail, exportInventoryRecord } from '@/api/processMangement/InventoryRecord' import { exportInventoryRecord, findSingleLogDetail, listLog } from '@/api/processMangement/InventoryRecord'
import BaseTable from '@/components/Table/BaseTable/index.vue' import BaseTable from '@/components/Table/BaseTable/index.vue'
import { BaseTableArgumentsTest } from '@/components/Table/AllTableArguments/BaseTableArguments'
export default { export default {
name: 'InventoryRecord', name: 'InventoryRecord',
...@@ -290,6 +289,8 @@ export default { ...@@ -290,6 +289,8 @@ export default {
// TODO: 库类型 1设备库 2工序库 // TODO: 库类型 1设备库 2工序库
ptype: undefined ptype: undefined
}, },
// TODO: list记录表名
listName: '出入库记录列表',
// TODO: 用来接收数据源 // TODO: 用来接收数据源
inventoryRecordList: [], inventoryRecordList: [],
// TODO: 用来说明每一列的类型 // TODO: 用来说明每一列的类型
...@@ -394,13 +395,13 @@ export default { ...@@ -394,13 +395,13 @@ export default {
}, },
// TODO: 用来汇总Table组件所需要的全部数据并一次性传输给子组件 // TODO: 用来汇总Table组件所需要的全部数据并一次性传输给子组件
allTableArguments() { allTableArguments() {
return { const baseTableArgumentsTest = new BaseTableArgumentsTest()
listName: '出入库记录列表', baseTableArgumentsTest.listName = this.listName
loading: this.loading, baseTableArgumentsTest.loading = this.loading
List: this.inventoryRecordList, baseTableArgumentsTest.List = this.inventoryRecordList
queryParams: this.queryParams, baseTableArgumentsTest.queryParams = this.queryParams
columObj: this.columObj baseTableArgumentsTest.columObj = this.columObj
} return baseTableArgumentsTest
} }
}, },
/** 路由离开前存储筛选条件*/ /** 路由离开前存储筛选条件*/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment