<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这两列
时间: 2023-07-07 14:44:38 浏览: 39
您可以在代码中添加以下逻辑来实现此操作:
```
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"的两列;否则,显示所有列。
相关问题
<q-table class="col-md-12" style="margin-top: 15px" dense :pagination="pigitions" :rows="rows" :columns="columns" row-key="FORM_ID" :selected-rows-label="getSelectedString" selection="multiple" :loading="loading" v-model:selected="selected"> </q-table>
在您提供的代码中,q-table 的行高亮没有被设置。您可以使用 `:row-class` 属性来设置行高亮类名。例如,以下代码将 `highlighted-row` 类名应用到具有 `highlight` 属性的行:
```
<q-table
class="col-md-12"
style="margin-top: 15px"
dense
:pagination="pigitions"
:rows="rows"
:columns="columns"
row-key="FORM_ID"
:selected-rows-label="getSelectedString"
selection="multiple"
:loading="loading"
v-model:selected="selected"
:row-class="(rowData) => rowData.highlight ? 'highlighted-row' : ''">
</q-table>
```
请注意,`:row-class` 属性中的箭头函数接受 `rowData` 参数,该参数包含当前行的数据。在上面的示例中,我们检查 `highlight` 属性是否为真,如果是,则返回 `highlighted-row` 类名,否则返回空字符串。您可以根据需要调整这个函数。
<q-table class="col-md-12 myRequestTable" style="margin-top: 15px" dense :pagination="pagination" :rows="rows" :columns="columns" row-key="FORM_ID" :selected-rows-label="getSelectedString" selection="multiple" :loading="loading" v-model:selected="selected" > </q-table> 我怎么通过myRequestTable来获取每行的tr
您可以使用 `ref` 属性来访问 `myRequestTable` 实例并获取每行的 `tr` 元素。以下是示例代码:
```html
<q-table
ref="myTable"
class="col-md-12 myRequestTable"
style="margin-top: 15px"
dense
:pagination="pagination"
:rows="rows"
:columns="columns"
row-key="FORM_ID"
:selected-rows-label="getSelectedString"
selection="multiple"
:loading="loading"
v-model:selected="selected"
></q-table>
```
```javascript
// 获取每行的 tr 元素
const rows = this.$refs.myTable.$el.querySelectorAll('tbody > tr');
```
通过 `$refs` 属性,您可以访问组件实例,然后使用 `$el` 属性访问原生的 DOM 元素,然后使用 `querySelectorAll` 方法来获取每行的 `tr` 元素。