【监听下拉框传参获取数据】

一:
写好结构


          <el-form-item label="级别" prop="level">
            <el-select v-model="form.level" placeholder="请选择级别">
              <el-option
                v-for="item in levelList"
                :key="item.value"
                :label="item.label"
                :value="item.value">
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="上级">
            <el-select v-model="form.parentId" clearable placeholder="上级">
              <el-option
                v-for="item in parentList"
                :key="item.id"
                :label="item.name"
                :value="item.id"
              />
            </el-select>
          </el-form-item>

二:data(){}的数据


        levelList:[{
          label: '一级',
          value: '1'
        },{
          label: '二级',
          value: '2'
        },{
          label: '三级',
          value: '3'
        }],
        
        form: {
          name: '',
          code: '',
          remark: '',
          level: '',
          parentId: ''
          }
          
        parentList: [],

三:监听特定的值


    watch: {
      'form.level': {
        immediate: true,
        // handler:是一个回调函数,即监听到变化应该执行的函数
        handler(value) {
          if (value) {
            // 清空数据
            this.form.parentId = ''
            this.getDataTableList(value)
          }
        }
      }
    },

四:传被监听到的参数id ,调接口获取下拉框数据


    getDataTableList(parentId) {
      getParentData(parentId - 1).then(response => {
        if (response.success) {
          console.log(response);
          this.parentList = response.data
        }
      })
    },
  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值