elementUI table组件,数据筛选设置默认值 ,filtered-value 的用法

项目最近使用到了elementUI,网上找的都是vue的版本,根据文档,现在使用的jqery+elementUI table,用到了过滤器,关于默认值 filtered-value 的用法,网上怎么都找不到,翻墙找到了用法,记录一下;

<el-table-column align="center"
  fixed
  prop="userStatus"
  label="状态"
  :filters="userStatusData"
  :filtered-value="['启用']"
	:filter-method="filterHandlerStatus"
		  
  width="60">
  
</el-table-column>

:filtered-value="[‘默认筛选的值’]"

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以使用 ElementUI 的作用域插槽(Scoped Slot)来动态渲染表头的每一列。具体实现步骤如下: 1. 在 `el-table-column` 标签中使用 `slot-scope` 属性来定义作用域插槽。 2. 在作用域插槽中使用 `header` 插槽来渲染表头内容,并通过 `props.column` 访问当前表头列的信息。 例如,以下代码可以实现动态添加表头列的功能: ``` <template> <el-table :data="tableData"> <el-table-column v-for="(column, index) in dynamicColumns" :key="index" :label="column.label" :prop="column.prop" :width="column.width" :sortable="column.sortable" :index="column.index" :formatter="column.formatter" :show-overflow-tooltip="column.showOverflowTooltip" :align="column.align" :header-align="column.headerAlign" :class-name="column.className" :label-class-name="column.labelClassName" :reserve-selection="column.reserveSelection" :fixed="column.fixed" :resizable="column.resizable" :column-key="column.columnKey" :filters="column.filters" :filter-placement="column.filterPlacement" :filter-multiple="column.filterMultiple" :filter-method="column.filterMethod" :filtered-value="column.filteredValue" :render-header="renderHeader(column)" ></el-table-column> </el-table> </template> <script> export default { data() { return { tableData: [ { name: 'John', age: 22, address: 'New York' }, { name: 'Jane', age: 23, address: 'London' }, { name: 'Bob', age: 25, address: 'Paris' } ], dynamicColumns: [ { label: 'Name', prop: 'name', width: '100px' }, { label: 'Age', prop: 'age', width: '100px' } ] } }, methods: { renderHeader(column) { if (column.prop === 'address') { return ( <div> { column.label } <el-button size="mini" type="text" icon="el-icon-plus" onClick={() => this.addColumn()}></el-button> </div> ) } else { return column.label } }, addColumn() { this.dynamicColumns.push({ label: 'Address', prop: 'address', width: '100px' }) } } } </script> ``` 在上述代码中,我们首先定义了一个 `dynamicColumns` 数组来存储动态添加的表头列信息。然后,在 `el-table-column` 标签中使用 `render-header` 属性来渲染表头内容,通过 `renderHeader` 方法来判断是否需要添加按钮,并在按钮点击事件中动态添加表头列。最后,我们通过 `v-for` 指令来动态渲染表格列。 注意:这里使用了 JSX 语法,如果你不熟悉可以先学习一下。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值