useProjection
将一个范围的数值反应性地投射到另一个范围。
演示
从 [0, 10] 投射到 [10, 100]
输入: 0
输出: 10
用法
ts
import { useProjection } from '@vueuse/math'
const input = ref(0)
const projected = useProjection(input, [0, 10], [0, 100])
input.value = 5 // projected.value === 50
input.value = 10 // projected.value === 100
类型声明
ts
/**
* Reactive numeric projection from one domain to another.
*
* @see https://vueuse.org.cn/useProjection
*
* @__NO_SIDE_EFFECTS__
*/
export declare function useProjection(
input: MaybeRefOrGetter<number>,
fromDomain: MaybeRefOrGetter<readonly [number, number]>,
toDomain: MaybeRefOrGetter<readonly [number, number]>,
projector?: ProjectorFunction<number, number>,
): ComputedRef<number>