最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue+element樹形選擇器組件封裝和使用方式

 更新時間:2020年04月23日 09:59:42   作者:WalkerShen  
這篇文章主要介紹了vue+element樹形選擇器組件封裝和使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

vue+element樹形選擇器組件封裝和使用

演示效果

image.png

image.png

子組件

<template>
  <div>
    <el-input
      v-model="value"
      @focus="showTree"
      :placeholder="placeholder"
      suffix-icon="el-icon-arrow-down"
      readonly
    />
    <el-tree
      v-if="treeShow"
      :data="data"
      :node-key="nodeKey"
      default-expand-all
      :props="defaultProps"
      accordion
      @node-click="handleNodeClick"
    >
    </el-tree>
  </div>
</template>

<script>
export default {
  data() {
    return {
      treeShow: false,
    };
  },
  props: {
    // input的值
    value: {
      type: String,
    },
    // 提示語
    placeholder: {
      type: String,
      default: "請點擊",
    },
    // 樹節(jié)點數(shù)據(jù)
    data: {
      type: Array,
    },
    // 節(jié)點的key
    nodeKey: {
      type: String,
      default: "id",
    },
    // 樹的props
    defaultProps: {
      type: Object,
      default: {
        children: "children",
        label: "name",
      },
    },
    // 方法
    handleData: {
      type: Function,
    },
  },
  methods: {

    // 點擊方法
    handleNodeClick(data) {
      this.treeShow = false;
      this.handleData(data);
    },

    // 顯示樹
    showTree() {
      this.treeShow = !this.treeShow;
    },
  },


  // 監(jiān)聽value數(shù)據(jù),解決組件傳值沒實時更新問題
  watch: {
    value: {
      handler: function (v, ov) {
        this.value = v;
      },
      deep: true,
      immediate: true,
    },
  },
};
</script>

<style lang="scss" scoped></style>

父組件

 <treeSelect
            :value="form.parentName"
            placeholder="點擊獲取父級區(qū)域"
            :data="treeList"
            :defaultProps="defaultProps"
            :handleData="receiveData"
          ></treeSelect>

export default{
//組件引入                          
  components: {
    treeSelect: () => import("../components/treeSelect.vue"),
  },
 //
data(){
    return {
      form: {},
       treeShow: false,
      treeList: [],
      defaultProps: {
        children: "children",
        label: "name",
      },
    }
},
methods:{
  receiveData(data) {
      console.log("接收數(shù)據(jù):", data);
    // 需要使用$set設(shè)置
      this.$set(this.form, "parentName", data.name);
      this.$set(this.form, "parentId", data.id);
    },

// 獲取樹的接口
  treeRegion() {
      let params = {};
      treeRegion(params).then((res) => {
        this.treeList = res.data;
      });
    },
}
  }

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 一文教會你vue中使用async和await

    一文教會你vue中使用async和await

    async和await作為異步函數(shù),語法很簡單,就是在函數(shù)前面加上async 關(guān)鍵字,來表示它是異步的,下面這篇文章主要給大家介紹了如何通過一文教會你vue中使用async和await的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • Vue中Quill富文本編輯器的使用教程

    Vue中Quill富文本編輯器的使用教程

    這篇文章主要介紹了Vue中Quill富文本編輯器的使用教程,包括自定義工具欄、自定義字體選項、圖片拖拽上傳、圖片改變大小等使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • 關(guān)于Element上傳組件beforeUpload上傳前限制失效問題

    關(guān)于Element上傳組件beforeUpload上傳前限制失效問題

    這篇文章主要介紹了Element上傳組件beforeUpload上傳前限制失效問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Vue3中使用ref標簽對組件進行操作方法

    Vue3中使用ref標簽對組件進行操作方法

    這篇文章主要介紹了Vue3中使用ref標簽對組件進行操作方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-04-04
  • vue組件代碼分塊和懶加載講解

    vue組件代碼分塊和懶加載講解

    這篇文章主要介紹了vue組件代碼分塊和懶加載講解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • vue小白入門教程

    vue小白入門教程

    vue是一套用于構(gòu)建用戶界面的漸進式框架,本文通過實例給大家介紹了vue入門教程適用小白初學(xué)者,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2018-04-04
  • vue項目中created()被調(diào)用多次的踩坑實戰(zhàn)

    vue項目中created()被調(diào)用多次的踩坑實戰(zhàn)

    在vue項目中我在created中調(diào)用了兩次get數(shù)據(jù)請求,所以下面這篇文章主要給大家介紹了關(guān)于vue項目中created()被調(diào)用多次的踩坑實戰(zhàn),需要的朋友可以參考下
    2023-03-03
  • Vue3項目中的hooks的使用教程

    Vue3項目中的hooks的使用教程

    今天我們稍微說一下 vue3 項目中的 hooks 的使用,其實這個 hooks 呢是和 vue2 當中的 mixin 是類似的,學(xué)習(xí)過 vue2 的小伙伴一定對 mixin 一定比較熟悉,快跟隨小編一起來學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • vue.js實現(xiàn)只彈一次彈框

    vue.js實現(xiàn)只彈一次彈框

    本篇文章通過代碼實例給大家詳細講述了一個vue的實例,實現(xiàn)只彈一次彈框功能,一起學(xué)習(xí)分享下。
    2018-01-01
  • 在Vue組件化中利用axios處理ajax請求的使用方法

    在Vue組件化中利用axios處理ajax請求的使用方法

    這篇文章主要給大家介紹了在Vue組件化中利用axios處理ajax請求的使用方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-08-08

最新評論

梁山县| 霍州市| 高雄市| 盖州市| 宁南县| 肇源县| 无锡市| 资溪县| 临湘市| 余干县| 邹城市| 文登市| 姜堰市| 鹿泉市| 柞水县| 内丘县| 和顺县| 白河县| 博白县| 罗甸县| 垫江县| 崇左市| 张家川| 大竹县| 同德县| 汝阳县| 武邑县| 云浮市| 肃南| 晋州市| 泰兴市| 固镇县| 安乡县| 道孚县| 陇西县| 老河口市| 于田县| 河北省| 柯坪县| 北碚区| 余干县|