el-transfer穿梭框,右侧数据回显

<div id="app" class="bg-white">
    <el-transfer v-model="value" :data="data" :props="{ key: 'projectId', label: 'projectName' }"
                 style="margin-left:145px;margin-right:auto;" :titles="['未绑项目', '已绑定项目']"></el-transfer>

</div>

        这是饿了么的组件穿梭框

        data() {
            return {
                loading: false,
                inputForm: {
                    id: '',
                    gridName: '',
                    gridId: '',
                    projectName: '',
                    projectId: '',
                    type: ''
                },
                data: [],
                value: []
            }

        },

         data中的数据格式

        右侧数据回显前提是左侧的数据中包含了右侧的数据,这么说有点绕看代码

        data中是所有的数据, value是右侧的数据,写了两个方法findAllProjectData是获取除去右侧的数据,findAllGridProject是获取右侧的数据,最后在获取value的方法中,将value的数据拼接给data,这样data就获取了所有数据,最重要的地方:el-transfer会自动将数据去重,不用担心左侧栏出现右侧的数据,最最重要的地方:value给赋值的时候只给id就可以

findAllProjectData() {
                this.get('${ctx}/basicinfo/gridProject/findAllProject?regionId=&type=' + this.inputForm.type).then((res) => {
                    if (res.data) {
                        this.data = res.data
                        this.findAllGridProject()
                    }
                })
            },

findAllGridProject() {
                this.value=[]
                this.get('${ctx}/basicinfo/gridProject/findAllGridProject?gridId=' + this.inputForm.gridId + '&type=' + this.inputForm.type).then((res) => {
                    if (res.data) {
                        res.data.forEach(item => {
                            this.$set(this.value, this.value.length, item.projectId)
                            this.$set(this.data, this.data.length, item)
                        })
                    }
                })
            },

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值