fix TreeSelect中存在的逻辑错误
This commit is contained in:
parent
69871fe802
commit
47c8e9ab48
@ -29,7 +29,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ElTreeSelect } from 'element-plus'
|
import { ElTree } from 'element-plus';
|
||||||
|
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
/* 配置项 */
|
/* 配置项 */
|
||||||
@ -68,7 +69,8 @@ const props = defineProps({
|
|||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
const selectTree = ref(ElTreeSelect);
|
const selectTree = ref<InstanceType<typeof ElTree>>()
|
||||||
|
const treeSelect = ref<InstanceType<typeof ElSelect>>();
|
||||||
|
|
||||||
const emit = defineEmits(['update:value']);
|
const emit = defineEmits(['update:value']);
|
||||||
|
|
||||||
@ -85,10 +87,10 @@ function initHandle() {
|
|||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
const selectedValue = valueId.value;
|
const selectedValue = valueId.value;
|
||||||
if(selectedValue !== null && typeof (selectedValue) !== 'undefined') {
|
if(selectedValue !== null && typeof (selectedValue) !== 'undefined') {
|
||||||
const node = selectTree.value.getNode(selectedValue)
|
const node = selectTree.value?.getNode(selectedValue)
|
||||||
if (node) {
|
if (node) {
|
||||||
valueTitle.value = node.data[props.objMap.label]
|
valueTitle.value = node.data[props.objMap.label]
|
||||||
selectTree.value.setCurrentKey(selectedValue) // 设置默认选中
|
selectTree.value?.setCurrentKey(selectedValue) // 设置默认选中
|
||||||
defaultExpandedKey.value = [selectedValue] // 设置默认展开
|
defaultExpandedKey.value = [selectedValue] // 设置默认展开
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -100,11 +102,9 @@ function handleNodeClick(node: any) {
|
|||||||
valueTitle.value = node[props.objMap.label]
|
valueTitle.value = node[props.objMap.label]
|
||||||
valueId.value = node[props.objMap.value];
|
valueId.value = node[props.objMap.value];
|
||||||
defaultExpandedKey.value = [];
|
defaultExpandedKey.value = [];
|
||||||
selectTree.value.blur()
|
|
||||||
selectFilterData('')
|
|
||||||
}
|
}
|
||||||
function selectFilterData(val: any) {
|
function selectFilterData(val: any) {
|
||||||
selectTree.value.filter(val)
|
selectTree.value?.filter(val)
|
||||||
}
|
}
|
||||||
function filterNode(value: any, data: any) {
|
function filterNode(value: any, data: any) {
|
||||||
if (!value) return true
|
if (!value) return true
|
||||||
|
Loading…
x
Reference in New Issue
Block a user