el-cascader 聯(lián)級選擇器

需求:根據(jù)公司id獲取部門
數(shù)據(jù):后臺的接口獲取公司列表根據(jù)公司id獲取部門列表
options是一個數(shù)組用來渲染選擇器的數(shù)組,[ {value:'', label: '',children: []} ]


image.png

<el-cascader
   separator=">"
   @change=“change
    v-model="cascaderValue"
   :options="options"></el-cascader>
<script>
export default {
  data() {
     return {
      cascaderValue: []
    }
  },
  async mounted() { //獲取后臺數(shù)據(jù),寫成需要的的數(shù)據(jù)結(jié)構(gòu)
    await getListCompanys().then(res => {
      let data = res.data.lists.map(item => ({
        ...item,
        value:item.id,
        label:item.name,
        children:[]
      }))
      data.map((item, index)=> {
        getListDepartments({params:{companyId:item.id}}).then(res => {
          data[index].children = res.data.lists.map(item => ({
            ...item,
            value:item.id,
            label:item.name,
          }))
        })
      })
      this.options = data
    })
  },
  methods:{
    change(v) {
        console.log(v)// ["2","3"] 一次為一級二級的值
    }
  }
}
</script>


回顯和設(shè)置默認(rèn)值的時候按照獲取到的值的格式

 this.cascaderValue = ["2","3"]
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容