<template>
<div id="testFirst">
<h1>{{ msg }}</h1>
<h1>{{ showDetail() }}</h1>
</div>
</template>
<script>
//import Vue from 'vue'
export default {
name:'testFirst',
// }
// var vm=new Vue({
// el:"testFirst",
data () {
return {
msg: 'hello i am lishang',
state:'is it 404 not found'
}
},
methods:{
showDetail:function () {
return this.state=this.msg+this.state
}
}
}
</script>
这是我错误部分的代码 错误显示为 You may have an infinite update loop in a component render function
当运行的时候 showDetail函数好像在无限次循环 ,当我改成
showDetail:function () {
return this.state=this.msg+‘is it 404 not found’
}
就可以了
改成下面就可以了
原因的话
<h1>{{ showDetail() }}</h1>
和this.state
形成了双向绑定,然后你在showDetail
return的时候又对this.state
进行了赋值操作,所以又会再次触发showDetail
形成了死循环