不使用v-for,我如何在vuejs中手动创建一个increase变量?
<comp :prop-data="page++">Some logic 1</comp>
<comp v-if="dataPage2Exist" :prop-data="page++">Difference logic of Page 2</comp>
<comp :prop-data="page++">Differnce logic of page 3</comp>
我尝试使用数据返回,但有一个错误说'不定式循环'
我在这里找到了一个解决方案。如果你有和我一样的问题。
data() {
return {
pages: [0, 1, 2, 3],
}
},
mounted() {
if (!this.dataPage2Exist()) {
this.pages = [0, 1, 2, 2]
}
}
,然后在组件
<comp :prop-data="pages[1]">Some logic 1</comp>
<comp v-if="dataPage2Exist" :prop-data="pages[2]">Difference logic of Page 2</comp>
<comp :prop-data="pages[3]">Differnce logic of page 3</comp>
你所描述的是从1到n的循环。
发生无限循环是因为Vue正在更新页面,因为变量发生了变化。该变量会随着页面呈现而改变。
你必须创建一个循环让它停止。
<!-- loop 10 times -->
<div>
<span v-for="n in 10">{{ n }}</span>
</div>
除了10
,你还可以在数据中有一个变量,它是迭代的次数。
参见Vue文档:v-for的范围