凉鈊 2021-11-29 17:21 采纳率: 66.7%
浏览 44
已结题

vue2 有那种思路可以实行这种联动的效果

img


问题: 点击微信监听支付状态,点击支付状态监听支付方式。然后显示对应的页面

我用watch 监听后保存在data请求,的确可以实现,但是总觉得代码量多了,而且基本上都是一样的,就是请求的接口的数据不太一样,问问还有什么更好的办法解决吗

  • 写回答

1条回答 默认 最新

  • CSDN专家-showbo 2021-11-29 17:35
    关注

    可以同一个处理函数,data中配置个query对象,change事件设置query对应的数据项后调用axios查询数据什么的
    示例代码

    img

    
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <div id="app">
        <select v-on:change="setQueryData" data-key="paytype">
            <option value="">选择支付方式</option>
            <option value="1">微信</option>
            <option value="2">支付宝</option>
            <option value="3">银联</option>
        </select>
        <select v-on:change="setQueryData" data-key="paystate">
            <option value="">选择订单状态</option>
            <option value="1">待支付</option>
            <option value="2">已支付</option>
        </select>
    </div>
    <script>
        new Vue({
            el: '#app',
            data: {
                query: {}
            },
            methods: {
                setQueryData(e) {
                    //如果使用了第三方的select组件,自己改这里的逻辑
                    var el = e.target;
                    this.query[el.dataset.key] = el.value;
                    var query = JSON.parse(JSON.stringify(this.query));
                    console.log(query)
                    //发送query参数进行查询的代码。。。。
                }
            }
        })
    </script>
    
    

    有帮助或启发麻烦点下【采纳该答案】

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月30日
  • 已采纳回答 11月29日
  • 创建了问题 11月29日

悬赏问题

  • ¥50 求解vmware的网络模式问题 别拿AI回答
  • ¥24 EFS加密后,在同一台电脑解密出错,证书界面找不到对应指纹的证书,未备份证书,求在原电脑解密的方法,可行即采纳
  • ¥15 springboot 3.0 实现Security 6.x版本集成
  • ¥15 PHP-8.1 镜像无法用dockerfile里的CMD命令启动 只能进入容器启动,如何解决?(操作系统-ubuntu)
  • ¥30 请帮我解决一下下面六个代码
  • ¥15 关于资源监视工具的e-care有知道的嘛
  • ¥35 MIMO天线稀疏阵列排布问题
  • ¥60 用visual studio编写程序,利用间接平差求解水准网
  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?