Vue element cascader是Vue.js的一個強大組件,用于展示層級結構數據。它提供了一個用戶友好的界面,能夠讓用戶快速查找和選擇所需的數據。
Vue element cascader有兩個重要的屬性,一個是options,一個是value。options表示要渲染到cascader中的所有數據,而value則表示cascader的當前值。通俗地說,options就是cascader要展示的內容,value就是cascader當前選中的數據。options和value都需要在data中進行聲明。
data() { return { options: [ { value: 'zhinan', label: '指南', children: [{ value: 'shejiyuanze', label: '設計原則', children: [{ value: 'yizhi', label: '一致' }] }] }, { value: 'zujian', label: '組件', children: [{ value: 'basic', label: 'Basic', children: [{ value: 'layout', label: 'Layout 布局' }] }] } ], currentValue: [] } }
以上是一個options的示例,包含了一個指南和一個組件,每個選項都包含value、label和children屬性。value是選項的值,label是選項的展示內容,children是該選項下的子選項。
當用戶選擇cascader中的某個選項時,cascader的value會隨之改變。這時候,就需要在cascader上添加一個change事件來獲取當前選中的值。在change事件中,會傳入兩個參數,一個是當前值,一個是選中的選項。
... methods: { handleChange(val, selected) { console.log(val, selected); } }
以上是一個cascader的示例,包含了options、currentValue以及change事件。@change中傳入的handleChange函數,在cascader選擇改變時會被執行,獲取當前選中的值和選中的選項。接下來就是根據這個值完成對應的交互。