959 Star 5.1K Fork 1.6K

GVPsmallwei / Avue

 / 详情

avue2.8.25 avue-crud,type:'tree',禁用一级选项,开放二级选项,选中某条二级选项后,再次点击输入框,弹出来的tree列表,一级选项变得可选了。

待办的
创建于  
2023-03-25 14:32

错误描述

操作第一步:第一级选项如“水和废水”原先是不可选的;
操作第一步第一级选项如“水和废水”原先是不可选的
选中一条二级选项如色度后再点击这个tree输入框,第一级选项“水和废水”变得可选了;
操作第二步“水和废水”变得可选了

版本号

2.8.25

代码

          {
            label: "项目名称",
            prop: "testingMethodItemId",
            type: "tree",
            rules: [{
              required: true,
              message: "选择项目名称",
              trigger: "blur"
            }],
            lazy:true,
            filterText:"请输入项目名称",
            dicUrl: "/api/ht-system/dict-biz/dictionary?code=category",
            props: {
              label: 'dictValue',
              value: 'dictKey'
            },
            treeLoad: (node, resolve) => {
              let stop_level = 1;
              let level = node.level;
              let data = node.data || {}
              let code = data.dictKey;
              let list = [];
              if (level == 0) {
                axios.get(`/api/ht-system/dict-biz/dictionary?code=category`).then(res => {
                  list = res.data.data;
                  list.shift();
                  resolve((Array.from(list) || []).map(ele => {
                  return Object.assign(ele, {
                    leaf: level >= stop_level,
                    disabled: true
                  })
                  }));
                })
              }
              if (level == 1) {
                axios.get(`/api/ht-business/testingmethod/list?itemCategory=${code}`).then(res => {
                  list = res.data.data;
                  resolve((Array.from(list) || []).map(ele => {
                  return Object.assign(ele, {
                    leaf: level >= stop_level,
                    disabled: false
                  })
                }));
                })
              } else {
                list = []
                resolve((Array.from(list) || []).map(ele => {
                  return Object.assign(ele, {
                    leaf: level >= stop_level,
                    disabled: true
                  })
                }));
              }
            },
            nodeClick:(data, node, nodeComp)=>{
            }
          }

评论 (4)

Mr.Feng 创建了任务
Mr.Feng 修改了描述
Mr.Feng 修改了描述
展开全部操作日志

更新到最新版试下

已经更新到2.10.10版本,问题依旧存在;

<!DOCTYPE html>

<html class="no-js">

<head>
  <meta charset="utf-8" />
  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
  <title></title>
  <meta name="description" content="" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <script src="https://cdn.staticfile.org/axios/0.19.0-beta.1/axios.js"></script>
  <script src="../../cdn/vue/vue.js"></script>
  <link rel="stylesheet" href="../../cdn/element-ui/theme-chalk/index.css" />
  <script src="../../cdn/element-ui/index.js"></script>

  <script src="https://cdn.staticfile.org/FileSaver.js/2014-11-29/FileSaver.min.js"></script>
  <script src="https://cdn.staticfile.org/xlsx/0.18.2/xlsx.full.min.js"></script>
  <link rel="stylesheet" href="../../../lib/index.css" />
  <script src="../../../lib/avue.js"></script>
</head>

<body>
  <div id="app">
    <avue-form :option="option" v-model="form">
    </avue-form>
  </div>
</body>
<script>
  let baseUrl = 'https://cli.avuejs.com/api/area'
  new Vue({
    el: '#app',
    data() {
      return {
        data: [],
        form: {

        },
        option: {
          column: [
            {
              label: '树形',
              prop: 'input1',
              type: 'tree',
              lazy: true,
              props: {
                label: 'name',
                value: 'code'
              },
              treeLoad: (node, resolve) => {
                let stop_level = 2;
                let level = node.level;
                let data = node.data || {}
                let code = data.code;
                let list = [];
                let callback = () => {
                  resolve((list || []).map(ele => {
                    return Object.assign(ele, {
                      leaf: level >= stop_level,
                      disabled: level == 0
                    })
                  }));
                }
                if (level == 0) {
                  axios.get(`${baseUrl}/getProvince`).then(res => {
                    list = res.data;
                    callback()
                  })
                }
                if (level == 1) {
                  axios.get(`${baseUrl}/getCity/${code}`).then(res => {
                    list = res.data;
                    callback()
                  })
                } else if (level == 2) {
                  axios.get(`${baseUrl}/getArea/${code}`).then(res => {
                    list = res.data;
                    callback()
                  })
                } else {
                  list = []
                  callback()
                }
              }
            }
          ],
        },
      }
    },
  })
</script>

</html>
smallwei 任务状态待办的 修改为已完成
Mr.Feng 任务状态已完成 修改为进行中

示例代码效果如图所示
输入图片说明
问题未解决;

smallwei 任务状态进行中 修改为待办的

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(2)
632261 smallweigit 1588214431 542466 broadview 1578927121
JavaScript
1
https://gitee.com/smallweigit/avue.git
git@gitee.com:smallweigit/avue.git
smallweigit
avue
Avue

搜索帮助