ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

VUE插件vue-treeselect的使用

2022-01-08 18:29:59  阅读:220  来源: 互联网

标签:node 插件 VUE res message vue treeselect children


效果图:
在这里插入图片描述
首先需要安装:

npm install --save @riophae/vue-treeselect

用法看代码注释:

 <template>
 <el-form ref="form"
           :model="searchForm"
           label-width="100px"
           :inline="true"
           :size="$formSize">
    <el-form-item label="区域:">
      <treeselect :append-to-body="true"
                  v-model="searchForm.areaId"
                  :options="areaAllList"
                  :normalizer="normalizer"
                  :show-count="true"
                  placeholder="请选择所属区域" />
    </el-form-item>
 </el-form>
 </template>
<script>
//引入插件
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";

export default {
  //使用组件
  components: { Treeselect },
  data () {
    return {
      areaAllList: [],
      searchForm: {
        areaId: null,//绑定值必须为null,否则输入框中会提示unkonwn
      },
    }
  },
  mounted () {
    this.getAreaAll()
  },
  methods: {
    //转换菜单数据结构
    normalizer (node) {
      if (node.children && !node.children.length) {
        delete node.children;
      }
      return {
        id: node.areaId,
        label: node.areaName,
        children: node.children,
      };
    },
    //调用接口获取select选项数据
    getAreaAll () {
      request({
        url: `/manager/Area/AllAreaTree`,
        method: "get",
      }).then((res) => {
        if (res[SETTING.MANAGER_STATE] === SETTING.MANAGER_SUCCESS_STATE) {
          this.areaAllList = res.data;
        } else {
          this.$message({
            type: "error",
            message: res.message || "操作失败",
          });
        }
      });
    },
  }
}
</script>
<style lang="scss" scoped>
::v-deep .vue-treeselect__control {
  max-width: 215px;
}
</style>

标签:node,插件,VUE,res,message,vue,treeselect,children
来源: https://blog.csdn.net/m0_45685758/article/details/122383927

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有