【问题解决】 avue dicUrl 动态参数加载字典数据(已解决)

在使用avue-crud组件时遇到问题,需要根据column.id动态加载column.source的下拉框选项。尝试多种方法未果后,从Avue的本地/网络数据字典示例中找到灵感,通过直接赋值dicData而非修改dicUrl来解决问题。具体做法包括在avue-crud的v-model绑定form对象,并初始化为空,设置option,监听form.id的变化,当id变化时更新dicData,实现动态加载字典数据。
摘要由CSDN通过智能技术生成

    事情是这样的,用了avue-crud组件,配置了一个option。
    现在有一列source属性要展示为 多选的下拉框 ,当然问题不在这而在于,选项是需要根据同级别属性id去拿的。也就是option.column.source 的配置中 需要该行的option.column.id作为参数。大致是这样。
    如下是我问GPT的问题——这是aven-crud的option的column的项, prop为’source’的项的dicUrl如何获得另一个同样传递过来的、跟source同级的属性prop: 'id’作为参数?

{
            prop: 'id',
            span: 24,
            type: 'input',
            label: '主键',
            display: false,
            hide: true
        },
{
            prop: 'source',
            span: 24,
            type: 'select',
            multiple: true, // 多选
            label: '节点对应模块',
            rules: [
                {
                    message: '节点对应模块必须填写',
                    required: true
                }
            ],
            required: true,
            // dicData: [{
            //     label: '字典1',
            //     value: 0
            // }, {
            //     label: '字典2',
            //     value: 1
            // }, {
            //     label: '字典3',
            //     value: 2
            // }],
            dicUrl: '/bz/node?id=???',
            props: {
                label: 'source',
                value: 'source'
            },
            search: true,
            searchMultiple: true,
            searchLabelWidth: '35%'
        },

    当然GPT也没给出什么好办法,网上的很多方法也进行了尝试,总归都不行,大家可以从注释行看到做了多少尝试。。虽然更多的删掉了。
在这里插入图片描述

    最后是从 Avue使用本地/网络数据字典 中获得了启发,解决了问题,总体而言就是 不操作dicUrl直接给dicData赋值 ,虽然理论上这种方法操作dicUrl也行得通,但是鬼知道js会不会即时加载改变的dicUrl获取数据,也懒得试了。

解决

  1. avue-crud组件里v-model绑定一个form属性,同时在数据那里初始化返回form空对象
    在这里插入图片描述
    在这里插入图片描述

  2. avue-crud组件里把option设为 .sync(不知道有没有用)
    在这里插入图片描述

  3. watch里面监听 form.id,此时handler的val就是变化的id,handler里面有个参数是那个immediate:true,大概是即时生效的意思,具体也不是很懂。
    在这里插入图片描述
    在这里插入图片描述

    大致的步骤就是这样,更多的属于个人的需求了,得益于form.id一旦变化是立刻被监听到的,算是把列表查询里和增改弹窗里的下拉框各查了一次去赋值,所以watch里的操作还写不少的。虽然功能是实现了,但是有时候属实有点卡,希望是在房里连公司网络不好使的原因。。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值