联调常态化干扰源页面 修改云效bug

This commit is contained in:
GGJ
2024-06-27 20:29:44 +08:00
parent 5bbff7ce0c
commit 3fa441af87
11 changed files with 184 additions and 106 deletions

View File

@@ -60,13 +60,13 @@ defineOptions({
name: 'govern/tree'
})
interface Props {
width?: string,
width?: string
expanded?: any
}
const props = withDefaults(defineProps<Props>(), {
width: '280px',
expanded:[]
expanded: []
})
const { proxy } = useCurrentInstance()
const menuCollapse = ref(false)
@@ -82,16 +82,47 @@ const onMenuCollapse = () => {
menuCollapse.value = !menuCollapse.value
proxy.eventBus.emit('cnTreeCollapse', menuCollapse)
}
const filterNode = (value: string, data: any) => {
const filterNode = (value: string, data: any, node: any) => {
if (!value) return true
return data.name.includes(value)
// return data.name.includes(value)
if (data.name) {
return chooseNode(value, data, node)
}
}
// 过滤父节点 / 子节点 (如果输入的参数是父节点且能匹配则返回该节点以及其下的所有子节点如果参数是子节点则返回该节点的父节点。name是中文字符enName是英文字符.
const chooseNode = (value: string, data: any, node: any) => {
if (data.name.indexOf(value) !== -1) {
return true
}
const level = node.level
// 如果传入的节点本身就是一级节点就不用校验了
if (level === 1) {
return false
}
// 先取当前节点的父节点
let parentData = node.parent
// 遍历当前节点的父节点
let index = 0
while (index < level - 1) {
// 如果匹配到直接返回此处name值是中文字符enName是英文字符。判断匹配中英文过滤
if (parentData.data.name.indexOf(value) !== -1) {
return true
}
// 否则的话再往上一层做匹配
parentData = parentData.parent
index++
}
// 没匹配到返回false
return false
}
const treeRef = ref<InstanceType<typeof ElTree>>()
const setCurrentKey=(e:string)=>{
treeRef.value!.setCurrentKey(e)
}
const setCurrentKey = (e: string) => {
treeRef.value!.setCurrentKey(e)
}
defineExpose({ treeRef,setCurrentKey })
defineExpose({ treeRef, setCurrentKey })
</script>
<style lang="scss" scoped>