Skip to content

toRef

Category
Export Size
180 B
Last Changed
last month
Alias
resolveRef
Related

Normalize value/ref/getter to ref or computed.

Usage

ts
import { toRef } from '@vueuse/core'

const foo = ref('hi')

const a = toRef(0) // Ref<number>
const b = toRef(foo) // Ref<string>
const c = toRef(() => 'hi') // ComputedRef<string>

Type Declarations

typescript
/**
 * Normalize value/ref/getter to `ref` or `computed`.
 */
export declare function toRef<T>(r: () => T): Readonly<Ref<T>>
export declare function toRef<T>(r: ComputedRef<T>): ComputedRef<T>
export declare function toRef<T>(r: MaybeRefOrGetter<T>): Ref<T>
export declare function toRef<T>(r: T): Ref<T>
export declare function toRef<T extends object, K extends keyof T>(
  object: T,
  key: K,
): ToRef<T[K]>
export declare function toRef<T extends object, K extends keyof T>(
  object: T,
  key: K,
  defaultValue: T[K],
): ToRef<Exclude<T[K], undefined>>
/**
 * @deprecated use `toRef` instead
 */
export declare const resolveRef: typeof toRef

Source

SourceDocs

Contributors

Anthony Fu
IlyaL
Anthony Fu

Changelog

v13.0.0 on
5e046 - feat!: drop CJS build, now it's ESM-only (#4581)
v12.8.0 on
7432f - feat(types): deprecate MaybeRef and MaybeRefOrGetter in favor of Vue's native (#4636)
v12.0.0-beta.1 on
0a9ed - feat!: drop Vue 2 support, optimize bundles and clean up (#4349)
v10.0.0 on
cb6f9 - fix: improve types overload, close #2925
v10.0.0-beta.4 on
4d757 - feat(types)!: rename MaybeComputedRef to MaybeRefOrGetter
f307f - feat: support two argument overrides from Vue
10e98 - feat!: rename resolveRef to toRef

Released under the MIT License.