el-cascader第一级节点不可选
时间: 2024-12-11 16:12:47 浏览: 18
在Element UI的el-cascader组件中,如果你希望第一级节点不可选,可以通过配置`props`属性来实现。具体来说,可以设置`props.expandTrigger`和`props.checkStrictly`属性来控制级联选择器的行为。
以下是一个示例代码,展示了如何使第一级节点不可选:
```vue
<template>
<el-cascader
v-model="selectedOptions"
:options="options"
:props="props"
@change="handleChange"
placeholder="Please select">
</el-cascader>
</template>
<script>
export default {
data() {
return {
selectedOptions: [],
options: [
{
value: 'zhejiang',
label: 'Zhejiang',
children: [
{
value: 'hangzhou',
label: 'Hangzhou',
children: [
{
value: 'xihu',
label: 'West Lake'
}
]
}
]
},
{
value: 'jiangsu',
label: 'Jiangsu',
children: [
{
value: 'nanjing',
label: 'Nanjing',
children: [
{
value: 'zhonghuamen',
label: 'Zhong Hua Men'
}
]
}
]
}
],
props: {
expandTrigger: 'hover',
value: 'value',
label: 'label',
children: 'children',
checkStrictly: true,
disabled: (node) => {
return !node.children;
}
}
};
},
methods: {
handleChange(value) {
console.log(value);
}
}
};
</script>
```
在这个示例中,`disabled`函数用于控制节点的禁用状态。`checkStrictly`属性确保选择时不需要遵循父子节点的关联关系。通过在`disabled`函数中返回`!node.children`,我们可以确保只有有子节点的节点(不是叶子节点)才是可选的。
这样,第一级节点由于没有子节点(即不是叶子节点),因此会被禁用,不可选择。
阅读全文