This commit is contained in:
X1627315083
2026-02-04 10:09:24 +08:00
parent 6a9fad0fc0
commit 6f370ac874
13 changed files with 354 additions and 105 deletions

View File

@@ -2,6 +2,7 @@
import { ref, onMounted, onUnmounted, reactive, toRefs, watch } from "vue";
import view1Item from './view1Item.vue'
import view2 from './view2/index.vue'
import { versionsList } from './view2/tools/versionsData'
const props = defineProps({
treeState:{
@@ -22,6 +23,30 @@ watch(()=>props.treeState,(newVal,oldVal)=>{
},250)
})
const view2Ref = ref(null)
const pushView2Item = (item)=>{
// if(node)view2Ref.value.pushNode(node)
// if(edge)view2Ref.value.pushEdge(edge)
view2Ref.value.push(item)
}
function traverseArray(items, callback) {
for (let i = 0; i < items.length; i++) {
const item = items[i]
callback(item, i)
if (item.children && Array.isArray(item.children) && item.children.length > 0) {
traverseArray(item.children, callback)
}
}
}
const addView2Item = ()=>{
traverseArray(versionsList, (item, index) => {
pushView2Item(item)
})
}
const view1List = ref([
{
name:'P1',
@@ -32,6 +57,7 @@ const view1List = ref([
}
])
onMounted(()=>{
addView2Item()
})
onUnmounted(()=>{
})
@@ -44,7 +70,7 @@ const {} = toRefs(data);
<view1Item v-for="item in view1List" :key="item.name" :item="item"></view1Item>
</div>
<div v-else class="box view2">
<view2 :list="view1List"></view2>
<view2 :list="view1List" ref="view2Ref"></view2>
</div>
</div>
</template>