Press "Enter" to skip to content

记录一个vue动态绑定变量赋值顺序问题

首先我正在做一个这样的功能:

数据是加载页面的时候获取的, 我需要点击 数量变化控件的 加 减 号进行 退押 和 付租 金额的计算。

最初我的代码是这样写的

that.$api.getRentInfo({'id' : that.indexRentId, 'token' : encodeURIComponent(that.uinfo.token)}).then(function(rentinfo){
	that.rentInfo = rentinfo
	for (var i = 0; i < that.rentInfo.glist.length; i++) {
		that.rentInfo.glist[i].index_return_num = that.rentInfo.glist[i].rent_num
	}
})

我给拿到的数据存储下来后构造了一个 index_return_num 属性

这个属性用于 数量变化控件的数量展示和变化 代码中也对其进行了绑定

可是我发现点击 数量变化控件 index_return_num 值改变后并没有影响 我动态计算的 退押和付租 金额的改变。

于是我改变了一下

that.$api.getRentInfo({'id' : that.indexRentId, 'token' : encodeURIComponent(that.uinfo.token)}).then(function(rentinfo){
	for (var i = 0; i < rentinfo.glist.length; i++) {
		rentinfo.glist[i].index_return_num = rentinfo.glist[i].rent_num
	}
	that.rentInfo = rentinfo
})

这样可以解决 动态绑定的问题。

我想应该是 我最开始 that.rentInfo = rentinfo 这样做的话 将rentinfo各个属性已经和界面元素进行了绑定 ,这时是没有 index_return_num 属性的,也就是 index_return_num 起始并没有绑定,那么后面我虽然构造了 index_return_num 但是是不起作用的。

发表评论