当前位置:首页 > 前端教程

elementui selectable

2026-03-05 22:22:06前端教程

ElementUI Selectable 功能

ElementUI 的 selectable 属性通常用于控制某些组件(如 el-treeel-table)中的节点是否可被选中。以下是几种常见的使用场景和配置方式。

el-tree 中的 selectable

el-tree 中,selectable 可以通过 node 属性或 props 配置来控制节点是否可选。

<el-tree
  :data="treeData"
  :props="defaultProps"
  show-checkbox
  node-key="id"
  :default-expand-all="true"
>
</el-tree>

相关配置:

  • show-checkbox:启用复选框模式。
  • node-key:指定节点唯一标识字段(如 id)。
  • props:定义树节点的数据映射,如 labelchildren

动态控制可选性:
通过 :render-content:propsdisabled 属性,可以动态控制某些节点是否可选。

elementui selectable

defaultProps: {
  children: 'children',
  label: 'label',
  disabled: (data, node) => {
    return data.isDisabled; // 根据数据动态禁用
  }
}

el-table 中的 selectable

el-table 中,selectable 用于控制行的可选状态,通常结合 el-table-column type="selection" 使用。

<el-table
  :data="tableData"
  @selection-change="handleSelectionChange"
>
  <el-table-column type="selection" :selectable="checkSelectable"></el-table-column>
  <el-table-column prop="name" label="Name"></el-table-column>
</el-table>

selectable 方法:

methods: {
  checkSelectable(row, index) {
    return row.status !== 'disabled'; // 仅允许非禁用行被选中
  }
}

关键点:

elementui selectable

  • type="selection":启用行选择功能。
  • @selection-change:监听选中行变化。
  • :selectable:自定义行是否可选。

注意事项

  1. el-tree 默认行为

    • 如果未配置 selectabledisabled,所有节点默认可选。
    • 通过 node.disabled 可以动态禁用节点。
  2. el-table 选择逻辑

    • selectable 返回 false 时,行不可选且复选框禁用。
    • 已选中的行在 selectable 变为 false 后仍会保留在 selection 中,需手动处理。
  3. 多选与单选

    • el-table 默认支持多选,如需单选,可结合 @select 事件手动清空其他选项。
handleSelect(selection, row) {
  this.$refs.table.clearSelection();
  this.$refs.table.toggleRowSelection(row);
}

通过合理配置 selectable,可以灵活控制 ElementUI 组件的可选行为,适应不同业务需求。

分享给朋友:

相关文章

修改elementui的样式

修改elementui的样式

修改 ElementUI 样式的方法 通过全局样式覆盖 在项目的全局样式文件(如 App.vue 或 main.css)中直接覆盖 ElementUI 的默认样式。需确保选择器优先级高于默认样式,可通…

vue实现selectable

vue实现selectable

Vue 实现可选择的列表或表格 使用 Vue 实现可选择功能可以通过 v-model 结合自定义逻辑完成。以下是一个基础实现示例,适用于列表或表格项的选择。 模板部分 <template&g…

elementui引用

elementui引用

安装 Element UI 在项目中通过 npm 或 yarn 安装 Element UI: npm install element-ui --save # 或 yarn add element…

elementui渐变

elementui渐变

实现ElementUI渐变效果的方法 ElementUI组件库本身不直接提供渐变样式,但可以通过CSS自定义实现渐变效果。以下是几种常见实现方式: 背景渐变 通过CSS的linear-gradien…

elementui title

elementui title

ElementUI 的 Title 相关组件及用法 ElementUI 提供了多种与标题(Title)相关的组件和配置选项,适用于不同场景的需求。以下是常见的使用方法和组件介绍: 对话框(Dia…

elementui备注

elementui备注

使用 Element UI 添加备注功能 Element UI 提供了多种组件可以用来实现备注功能,具体选择取决于需求场景。以下是几种常见的实现方式: 输入框备注 使用 el-input 组件创建…