你能帮我理解或说是否可以做到"循环"在Vue中计算属性,
我想根据两个标准将日期范围划分为特定持续时间段
end date
时interval (duration)
计算dateRange / period
interval(duration)
后,endDate
计算startDate + interval * period
请参阅JSFiddle
我已经尝试为interval
添加第二个计算属性,但它进入循环并使浏览器崩溃。
答案 0 :(得分:1)
建议的处理方法是使用computed setter。使其成为一个值是正常数据值,另一个值是计算属性。然后,使其在设置计算属性时,计算并设置数据值。
对于您的情况,您可以为endDate
添加一个setter,然后在设置时计算interval
。
computed: {
endDate: {
get() {
return moment(this.startDate).add(this.interval * this.periods, 'days')
},
set(value) {
this.interval = // whatever `endDate` would end up being from setting interval directly, calculate that value here
}
},
}