Vue.js Laggy Vuetify v-checkbox
我将Vuetify v-checkbox呈现在一个包含大约500个项目的列表中,并经历了显著的延迟。在这个时代,500人的名单应该是可以管理的。我可以选择哪些方法来提高性能Vue.js Laggy Vuetify v-checkbox,vue.js,vuejs2,vuetify.js,Vue.js,Vuejs2,Vuetify.js,我将Vuetify v-checkbox呈现在一个包含大约500个项目的列表中,并经历了显著的延迟。在这个时代,500人的名单应该是可以管理的。我可以选择哪些方法来提高性能 <div id="app"> <v-app> <div v-for="(x, index) in values"><v-checkbox v-model="selected"/ :value="inde
<div id="app">
<v-app>
<div v-for="(x, index) in values"><v-checkbox v-model="selected"/ :value="index"></div>
</v-app>
</div>
new Vue({
vuetify: new Vuetify(),
data: () => ({
values: [],
selected: []
}),
created(){
this.values.length = 500;
}
}).$mount("#app");
新Vue({
vuetify:新的vuetify(),
数据:()=>({
值:[],
选定:[]
}),
创建(){
此.values.length=500;
}
}).$mount(“#app”);
查看以体验令人敬畏的延迟。我对Vue一点也不在行,因此这可能是一种不好的做法,但如果您自己管理数据,它的性能似乎要好得多:
newvue({
vuetify:新的vuetify(),
数据:()=>({
值:新数组(500)。填充(0),
选定:[]
}),
方法:{
切换:功能(索引){
如果(此选定项包括(索引)){
this.selected.splice(this.selected.indexOf(index),1);
}否则{
此.selected.push(索引)
}
}
}
}).$mount(“#app”);
我对Vue一点也不在行,因此这可能是一种不好的做法,但如果您自己管理数据,它的性能似乎要好得多:
newvue({
vuetify:新的vuetify(),
数据:()=>({
值:新数组(500)。填充(0),
选定:[]
}),
方法:{
切换:功能(索引){
如果(此选定项包括(索引)){
this.selected.splice(this.selected.indexOf(index),1);
}否则{
此.selected.push(索引)
}
}
}
}).$mount(“#app”);
这无疑提高了性能,但是,当在我的真实应用程序中实现时,这一改进不足以使复选框可用。这无疑提高了性能,但是,当在我的真实应用程序中实现时,这一改进不足以使复选框可用。
new Vue({
vuetify: new Vuetify(),
data: () => ({
values: new Array(500).fill(0),
selected: []
}),
methods: {
toggle: function(index) {
if (this.selected.includes(index)) {
this.selected.splice(this.selected.indexOf(index), 1);
} else {
this.selected.push(index)
}
}
}
}).$mount("#app");
<div id="app">
<v-app>
<div v-html="Array.from(selected)"></div>
<div v-for="(x, index) in values"><v-checkbox @change="toggle(index)" :value="index"></div>
</v-app>
</div>