欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

vue自由連線

阮建安1年前5瀏覽0評論

vue自由連線是一種十分靈活的前端開發工具,可以快速搭建交互性強、頁面動態的網頁。

以下是一個簡單的vue自由連線示例:

<template>
<div class="container">
<div class="box" v-for="item in itemList" :key="item.id">
{{item.text}}
</div>
<svg class="line-container">
<path v-for="(line, index) in lineList" :key="index" :d="line.path" />
</svg>
</div>
</template>
<script>
export default {
data () {
return {
itemList: [
{id: 1, text: 'item 1'},
{id: 2, text: 'item 2'},
{id: 3, text: 'item 3'}
],
lineList: []
}
},
mounted () {
this.drawLine()
},
methods: {
drawLine () {
const nodes = document.querySelectorAll('.box')
const len = nodes.length
for (let i = 0; i < len - 1; i++) {
const startNode = nodes[i]
const endNode = nodes[i + 1]
const startRect = startNode.getBoundingClientRect()
const endRect = endNode.getBoundingClientRect()
const start = {
x: startRect.left + startRect.width / 2,
y: startRect.top + startRect.height / 2
}
const end = {
x: endRect.left + endRect.width / 2,
y: endRect.top + endRect.height / 2
}
const path = `M${start.x},${start.y} L${end.x},${end.y}`
this.lineList.push({
path
})
}
}
}
}
</script>

上述代碼中,通過v-for循環渲染三個box,并通過svg繪制得到兩兩之間的連線。整個過程十分簡單,只需要在mounted方法中調用drawLine()來繪制連線。

vue自由連線的靈活性不僅體現在頁面呈現上,還體現在邏輯的處理上,開發者可以自由運用vue組件中的數據及方法,實現更為強大的交互體驗。