縱向步驟條是一種常見的頁面交互組件,通常用于引導(dǎo)用戶完成某項任務(wù)。它由多個步驟組成,每個步驟都包含一個標(biāo)題和一個圖標(biāo),用戶可以通過點擊不同的步驟來切換頁面內(nèi)容。在Vue中,我們也可以很方便地實現(xiàn)一個縱向步驟條組件。
<template> <div class="vertical-stepper"> <ul> <li v-for="step in steps" :class="{active: step.isActive}" :key="step.title"> <i :class="step.icon"></i> <h3>{{step.title}}</h3> <p>{{step.description}}</p> </li> </ul> </div> </template> <script> export default { data() { return { steps: [ { title: '第一步', description: '這是第一步的描述', icon: 'iconfont icon-step-1', isActive: true }, { title: '第二步', description: '這是第二步的描述', icon: 'iconfont icon-step-2', isActive: false }, { title: '第三步', description: '這是第三步的描述', icon: 'iconfont icon-step-3', isActive: false } ] } } } </script>
代碼中,我們首先定義了一個包含多個步驟信息的數(shù)組steps。其中每個步驟都有一個標(biāo)題、一個描述和一個圖標(biāo),并且都有一個isActive屬性來標(biāo)記當(dāng)前步驟是否被選中。
接下來,在template中我們通過一個ul標(biāo)簽和v-for指令來循環(huán)展示所有的步驟。對于每個步驟,我們使用li標(biāo)簽和:class指令來設(shè)置它是否應(yīng)該被激活。當(dāng)一個步驟被激活時,我們會通過一個active類來高亮顯示該步驟。在li標(biāo)簽中,我們還使用一個i標(biāo)簽來展示步驟的圖標(biāo),一個h3標(biāo)簽展示步驟的標(biāo)題,以及一個p標(biāo)簽展示步驟的描述。
最后,在script中,我們通過data函數(shù)將步驟數(shù)據(jù)定義為組件的一個屬性。這樣,當(dāng)該組件被渲染時,它就會自動展示所有的步驟信息,并根據(jù)isActive屬性確定哪個步驟是當(dāng)前的激活狀態(tài)。
總之,Vue提供了很多靈活的方式來實現(xiàn)復(fù)雜的交互組件,并可以幫助我們高效地創(chuàng)建符合用戶需求的頁面。縱向步驟條是其中一個非常常見的組件,也是一個很好的練習(xí)Vue組件化思維的例子。