怎么让visibleColumns里的数据,在我画面状态是20的时候,追加显示DOC_UNSIGNED和DOC_SIGNED这两列
时间: 2024-03-17 07:42:39 浏览: 56
您可以在代码中添加以下逻辑来实现此操作:
```
computed: {
visibleColumns() {
let columns = [...this.columns];
if (this.rows.length === 20) {
// 追加显示DOC_UNSIGNED和DOC_SIGNED两列
columns.push({name: 'DOC_UNSIGNED'});
columns.push({name: 'DOC_SIGNED'});
}
return columns;
}
}
```
这个逻辑将根据表格中的行数来动态设置可见列。如果表格中的行数等于20,则将名为"DOC_UNSIGNED"和"DOC_SIGNED"的两列追加到现有的列中;否则,显示所有列。
相关问题
getVisibleColumns() { let columns = [...this.event.visibleColumns]; if (this.event.submitData.ProcessStep === 20) { // 追加显示DOC_UNSIGNED和DOC_SIGNED两列 columns.push('DOC_UNSIGNED') columns.push('DOC_SIGNED') } return columns } 优化代码
您可以使用`Array.prototype.concat()`方法来简化代码,如下所示:
```
getVisibleColumns() {
let columns = this.event.visibleColumns.concat(
this.event.submitData.ProcessStep === 20 ? ['DOC_UNSIGNED', 'DOC_SIGNED'] : []
);
return columns;
}
```
这个方法将`visibleColumns`数组和`['DOC_UNSIGNED', 'DOC_SIGNED']`数组进行连接,如果`ProcessStep`等于20,则将两个数组连接起来,否则只返回`visibleColumns`数组。
<q-table class="col-md-12" style="margin-top: 15px" dense :pagination="pigitions" :rows="rows" :columns="columns" row-key="ITEM_ID" :selected-rows-label="getSelectedString" selection="multiple" :loading="loading" :visible-columns="visibleColumns" v-model:selected="selected"> </q-table>:visible-columns="visibleColumns" 怎么让visibleColumns里的数据,在我画面状态是20的时候,显示DOC_UNSIGNED和DOC_SIGNED这两列
您可以在代码中添加以下逻辑来实现此操作:
```
computed: {
visibleColumns() {
if (this.rows.length === 20) {
// 只显示DOC_UNSIGNED和DOC_SIGNED两列
return this.columns.filter(column => ['DOC_UNSIGNED', 'DOC_SIGNED'].includes(column.name));
}
// 显示所有列
return this.columns;
}
}
```
这个逻辑将根据表格中的行数来动态设置可见列。如果表格中的行数等于20,则只显示名为"DOC_UNSIGNED"和"DOC_SIGNED"的两列;否则,显示所有列。
阅读全文