vue中data之间数据自调用undefined的问题

需求:

多个div,根据各自的num计算各自的百分比

问题:

在data中,自己调用自己的数据生成百分比浏览器报错

data(){
	return{
		{num:100},
		{num:0,percent:this.getPercent(this.totalData[1].num,this.totalData[0].num),
	}
}

这样的话,浏览器中报错
在这里插入图片描述

解析:

我认为,虽然在vue中,this是指向VueComponent的,但是data中的属性调用另一属性的时候,data中的数据还没有解析出来,因为return {}对象的时候它们中所有的数据是一起渲染解析的,所以会出现undefined问 题。

解决方案:

将赋值操作写到mounted中,最终完美解决

this.totalData[1].percent = this.getPercent(this.totalData[1].num,this.totalData[0].num)
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值