Vue.js vue表呈现中的无限循环警告
我尝试在呈现表时调用函数,并根据函数中的条件指定该值,并使用字符串插值显示该值,但我得到了无限循环错误 下面是代码的url jsfiddle.net/amit_bhadale/5kct0au1/2/ 下面是函数Vue.js vue表呈现中的无限循环警告,vue.js,vuejs2,vue-component,infinite-loop,Vue.js,Vuejs2,Vue Component,Infinite Loop,我尝试在呈现表时调用函数,并根据函数中的条件指定该值,并使用字符串插值显示该值,但我得到了无限循环错误 下面是代码的url jsfiddle.net/amit_bhadale/5kct0au1/2/ 下面是函数 checkData(day, time){ let that = this let result = this.serverData.some(a=>{ if(a.Day === day && a.Time =
checkData(day, time){
let that = this
let result = this.serverData.some(a=>{
if(a.Day === day && a.Time === time){
that.cellId = a.id
// This is giving infinite loop error
// if i chnage it to this then it works
// that.cellId = 'Some normal string'
}
return (a.Day === day && a.Time === time)
})
return result
}
HTML部分
<table>
<tr v-for="(time, i) in time" :key="i">
<td v-for="(day, j) in day" :key="j">
<span v-if="checkData(day, time)">
</span>
<span v-else>
No data in this cell
</span>
</td>
</tr>
</table>
此单元格中没有数据
不要在渲染周期内使用不同的值多次更新道具。
要分离这些组件,只需将其放入单个组件中:
e、 g:
{
道具:['time','day','serverData'],
计算:{
cellValue(){
let val=“此单元格中没有数据”
this.serverData.some(a=>{
如果(a.Day===this.Day&&a.Time==this.Time){
val=a.id;返回true;
}
})
返回值
}
}
}
细胞值
您可以在控制台中看到无限循环警告。谢谢。虽然JSFiddles非常欢迎您帮助他人重现您的问题,但通常希望您将代码(至少是导致错误的部分)也放在问题本身中。@DelenaMalan谢谢您让我知道。我已经更新了问题我认为这就是警告的原因:that.cellId=a.id
当您修改属性时,可能会触发rendercycle@Estradiaz我们如何解决这个问题?