Skip to content

Commit a47fc1f

Browse files
committed
perf: small code changes to maximize performance
1 parent 75ceaa7 commit a47fc1f

File tree

3 files changed

+5
-6
lines changed

3 files changed

+5
-6
lines changed

packages/vue-virtual-scroller/src/components/DynamicScroller.vue

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,8 @@ export default {
106106
const result = []
107107
const { items, keyField, simpleArray } = this
108108
const sizes = this.vscrollData.sizes
109-
for (let i = 0; i < items.length; i++) {
109+
const l = items.length
110+
for (let i = 0; i < l; i++) {
110111
const item = items[i]
111112
const id = simpleArray ? i : item[keyField]
112113
let size = sizes[id]

packages/vue-virtual-scroller/src/components/DynamicScrollerItem.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ export default {
145145
},
146146
147147
updateWatchData () {
148-
if (this.watchData) {
148+
if (this.watchData && !this.vscrollResizeObserver) {
149149
this.$_watchData = this.$watch('item', () => {
150150
this.onDataUpdate()
151151
}, {
@@ -184,7 +184,7 @@ export default {
184184
},
185185
186186
applySize (width, height) {
187-
const size = Math.round(this.vscrollParent.direction === 'vertical' ? height : width)
187+
const size = ~~(this.vscrollParent.direction === 'vertical' ? height : width)
188188
if (size && this.size !== size) {
189189
if (this.vscrollParent.$_undefinedMap[this.id]) {
190190
this.vscrollParent.$_undefinedSizes--

packages/vue-virtual-scroller/src/components/RecycleScroller.vue

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -493,9 +493,7 @@ export default {
493493
if (view.nr.used) {
494494
// Update view item index
495495
if (checkItem) {
496-
view.nr.index = items.findIndex(
497-
item => keyField ? item[keyField] === view.item[keyField] : item === view.item,
498-
)
496+
view.nr.index = items.indexOf(view.item)
499497
}
500498
501499
// Check if index is still in visible range

0 commit comments

Comments
 (0)