Skip to content

useCloned

参考的反应式克隆。默认情况下,它使用 JSON.parse(JSON.stringify()) 进行克隆。

¥Reactive clone of a ref. By default, it use JSON.parse(JSON.stringify()) to do the clone.

示例

用法

¥Usage

ts
import { 
useCloned
} from '@vueuse/core'
const
original
=
ref
({
key
: 'value' })
const {
cloned
} =
useCloned
(
original
)
original
.
value
.
key
= 'some new value'
console
.
log
(
cloned
.
value
.
key
) // 'value'

手动克隆

¥Manual cloning

ts
import { 
useCloned
} from '@vueuse/core'
const
original
=
ref
({
key
: 'value' })
const {
cloned
,
sync
} =
useCloned
(
original
, {
manual
: true })
original
.
value
.
key
= 'manual'
console
.
log
(
cloned
.
value
.
key
) // 'value'
sync
()
console
.
log
(
cloned
.
value
.
key
)// 'manual'

自定义克隆函数

¥Custom Clone Function

klona 为例:

¥Using klona for example:

ts
import { 
useCloned
} from '@vueuse/core'
import {
klona
} from 'klona'
const
original
=
ref
({
key
: 'value' })
const {
cloned
,
isModified
,
sync
} =
useCloned
(
original
, {
clone
:
klona
})