【发布时间】:2021-03-21 11:32:05
【问题描述】:
你好,我是 vuejs 和 vuetify 的新手,我现在想显示大约 400 列和 6 行的项目,colum_id (cid) 和 row_id(rid) 但渲染速度很慢对不起,我知道如何提高这个循环性能谢谢事前:
<v-layout>
<div class="reglahan-table-result-betting">
<tr
v-for="i in 6"
:key="i">
<td
v-for="j in 60"
:key="j">
<div
v-for="(item, k) in props.resultBetting"
:key="k">
<span
v-if="Number(item.cid) === j && Number(item.rid) === i"
:class="item.color"
/>
</div>
<span class="no-circle" />
</td>
</tr>
</div>
</v-layout>
【问题讨论】:
-
你有一个三重嵌套循环,很难让它非常高效,而且你拥有的数据越多,它得到的速度就越慢。也许重构是为了帮助降低这种复杂性
-
400 列?我看到 60 列。最里面的循环看起来也很奇怪。您为
resultBetting中的每个项目呈现一个div,但除了与当前列/行索引对应的一个之外,所有项目都是空的。为什么? -
According to the documentation,您可以通过删除
:key来提高性能。但是你必须意识到副作用。重新排序元素将不再可能。
标签: html vue.js for-loop vuetify.js v-for