跳到主要内容

useProjection

分类
导出大小
163 B
@vueuse/math
上次更改
3 个月前
相关

将一个范围的数值反应性地投射到另一个范围。

演示

从 [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>

来源

源码演示文档

贡献者

Anthony Fu
IlyaL
Anthony Fu
SerKo
Robin
Curt Grimes
王文路

更新日志

v13.6.0
d32f8 - refactor: 为所有纯函数添加 @__NO_SIDE_EFFECTS__ 注释 (#4907)
v12.8.0
7432f - feat(types): 废弃 MaybeRefMaybeRefOrGetter,转而使用 Vue 的原生类型 (#4636)

根据 MIT 许可证发布。