Skip to content

Commit 3b4dbf3

Browse files
committed
perf: small code changes to maximize performance
1 parent 95b934a commit 3b4dbf3

File tree

3 files changed

+5
-6
lines changed

3 files changed

+5
-6
lines changed

Diff for: packages/vue-virtual-scroller/src/components/DynamicScroller.vue

+2-1
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,8 @@ export default {
111111
const result = []
112112
const { items, keyField, simpleArray } = this
113113
const sizes = this.vscrollData.sizes
114-
for (let i = 0; i < items.length; i++) {
114+
const l = items.length
115+
for (let i = 0; i < l; i++) {
115116
const item = items[i]
116117
const id = simpleArray ? i : item[keyField]
117118
let size = sizes[id]

Diff for: packages/vue-virtual-scroller/src/components/DynamicScrollerItem.vue

+2-2
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ export default {
149149
},
150150
151151
updateWatchData () {
152-
if (this.watchData) {
152+
if (this.watchData && !this.vscrollResizeObserver) {
153153
this.$_watchData = this.$watch('item', () => {
154154
this.onDataUpdate()
155155
}, {
@@ -188,7 +188,7 @@ export default {
188188
},
189189
190190
applySize (width, height) {
191-
const size = Math.round(this.vscrollParent.direction === 'vertical' ? height : width)
191+
const size = ~~(this.vscrollParent.direction === 'vertical' ? height : width)
192192
if (size && this.size !== size) {
193193
if (this.vscrollParent.$_undefinedMap[this.id]) {
194194
this.vscrollParent.$_undefinedSizes--

Diff for: packages/vue-virtual-scroller/src/components/RecycleScroller.vue

+1-3
Original file line numberDiff line numberDiff line change
@@ -500,9 +500,7 @@ export default {
500500
if (view.nr.used) {
501501
// Update view item index
502502
if (checkItem) {
503-
view.nr.index = items.findIndex(
504-
item => keyField ? item[keyField] === view.item[keyField] : item === view.item,
505-
)
503+
view.nr.index = items.indexOf(view.item)
506504
}
507505
508506
// Check if index is still in visible range

0 commit comments

Comments
 (0)