解决因变量名命名问题监听不到指定变量

出现原因:

 问题复现:

本来我是在computed中写了一个方法来监听table中的数据变化的,但是我发现出现一个Bug就是,当初次加载页面,并且多选优惠券时,金额并不会动态更新,但是当再次选中一张优惠券时,金额就更新了。于是我在网上找了好多方法,最后发现正就是因为变量名的问题所以一直更新不了变量值,导致总金额没有进行更新

初次加载进入页面时:

 

选中了两张优惠券但是总金额没有变: 然后再选中一张,金额就变了

 我一直找了好久没有找到原因,然后我把变量名改了一下

刚开始是这样写的:

/** 计算优惠券的总金额  */
                tableProductList({
                table_product_list,
                rate
            }) {
                return table_product_list.map(item => {
                    item.uuid = sourcing.uuid();

                    // 优惠券 原始金额是美元,需要转换成当前币种的金额
                    if (item.type == ErpCustomType['order_cost_type']['coupon'].value) {
                        const {
                            _price = ''
                        } = item;

                        // 拷贝一份金额的原始值(美元)
                        if (_price == '') {
                            item._price = item.price;
                        }

                        // 如果金额是负数 则转换成 正数 进行计算
                        const price = item._price > 0 ? item._price : Math.abs(item._price);
                        // 计算总金额
                        const total_price = sourcing.roundingUp(Number(rate) * Number(price));

                        item.price = -total_price;// 然后再将金额转换成负数
                        item.fee = total_price;
                    }
                    return item;
                })
            },

 我把变量名命名为_price就有问题了,然后把_price改成了temp_price就可以了

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值