后端返回数据顺序是乱的,实现根据名称进行自动匹配查找对应数据

项目问题:通过websocket与后端进行通信时,接收后端返回数据的顺序是打乱的或者上一秒传输的是心跳值,下一秒传输的是数据值,这个时候利用索引进行数据分割截取在渲染到页面上,就会出现一会数据显示心跳值一会显示真正的数据。

解决方法:在methods内写一个自动根据字段名称查找对应数据的方法,然后将这个查找数据的方法带入到你要获取数据的代码内。

看代码

var num = e.data.split(",",20)  // 这个用来截取后端返回数据

if(num[0].includes("value")){  // 这个value值是你要截取数据对应字段的名称

        this.aa = this.searchValue("value1",num);

        this.bb= this.searchValue("value2",num);

        this.cc= this.searchValue("value3",num);

        this.dd= this.searchValue("value4",num);

        // this.aa this.bb this.cc this.dd 是你要渲染的方法 不过这个要看你自己真实数据

};

// 这个是根据后端返回数据字段名称进行数据查找赋值

searchValue(val,value){

// for循环中index要从你截取的第一个数据的索引开始,你要截取第一个数据索引为10 则index=10

        for(let index = 1; index <  6; index++){

                const element = value[index];

                if(element.split("=")[0].includes(val){

                        return Number(element.split("=")[1].replace(/'|}/g,""));

}

}

}

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值