8000 fix(useOffsetPagination): don't mutate props when it's readonly (#3581) · vueuse/vueuse@4dacec8 · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Commit 4dacec8

Browse files
authored
fix(useOffsetPagination): don't mutate props when it's readonly (#3581)
1 parent 7e2da58 commit 4dacec8

File tree

1 file changed

+11
-5
lines changed
  • packages/core/useOffsetPagination

1 file changed

+11
-5
lines changed

packages/core/useOffsetPagination/index.ts

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type { ComputedRef, Ref, UnwrapNestedRefs } from 'vue-demi'
2-
import { computed, isRef, reactive, watch } from 'vue-demi'
2+
import { computed, isReadonly, isRef, reactive, watch } from 'vue-demi'
33
import { noop, syncRef, toValue } from '@vueuse/shared'
44
import type { MaybeRef, MaybeRefOrGetter } from '@vueuse/shared'
55
import { useClamp } from '../../math/useClamp'
@@ -74,11 +74,17 @@ export function useOffsetPagination(options: UseOffsetPaginationOptions): UseOff
7474
const isFirstPage = computed(() => currentPage.value === 1)
7575
const isLastPage = computed(() => currentPage.value === pageCount.value)
7676

77-
if (isRef(page))
78-
syncRef(page, currentPage)
77+
if (isRef(page)) {
78+
syncRef(page, currentPage, {
79+
direction: isReadonly(page) ? 'ltr' : 'both',
80+
})
81+
}
7982

80-
if (isRef(pageSize))
81-
syncRef(pageSize, currentPageSize)
83+
if (isRef(pageSize)) {
84+
syncRef(pageSize, currentPageSize, {
85+
direction: isReadonly(pageSize) ? 'ltr' : 'both',
86+
})
87+
}
8288

8389
function prev() {
8490
currentPage.value--

0 commit comments

Comments
 (0)
0