Value
new Value(initial: number)可变的数字,带有 setValue、setOffset、flattenOffset、extractOffset、stopAnimation 和 resetAnimation。
@kkwaenggwari/animated 的所有导出,附带签名以及讲解它的指南。
new Value(initial: number)可变的数字,带有 setValue、setOffset、flattenOffset、extractOffset、stopAnimation 和 resetAnimation。
new ValueXY({ x?, y? })成对的 x 和 y 值,支持同样的操作,另有 getLayout 和 getTranslateTransform。
createValue(initial: number | Record<string, number>)在 React 之外创建一个数字或具名的数值记录。创建本身不会产生任何动作。
指南: 值与 stylenode.getValue() · node.interpolate(config) · node.addListener(fn)所有值和计算图的只读基类:getValue、interpolate 和监听器。
node.interpolate({ inputRange, outputRange, easing?, extrapolate? })从输入范围到输出范围的动态映射,支持 easing 以及 extend、clamp 或 identity 外推。
new AnimatedComputed(inputs, (...values) => result);基于一个或多个输入的纯只读计算。使用它的输出在 JavaScript 中运行。
指南: 值与 styleinterpolateFn({ value, inputRange, outputRange });对一个普通数字执行一次插值。
指南: 值与 styleadd(...inputs);数字与值之和。
指南: 值与 stylesubtract(a, b);两个输入之差。
指南: 值与 stylemultiply(...inputs);数字与值之积。
指南: 值与 styledivide(a, b);两个输入之商。
指南: 值与 stylemodulo(a, b);循环取值,例如无尽的旋转。
指南: 值与 stylediffClamp(input, min, max);跟随输入的变化但保持在范围内;适合滚动时隐藏的页头。
指南: 值与 styleuseAnimatedValue(initial, { scope?, id? }?)在组件生命周期内持有一个数字或数值记录。在 style 中它是一个 CSS 变量。
useAnimated(initial, value => { … }, deps?, { autoStart?, onComplete?, scope? }?)持有一个值,以及在其工厂函数中声明的所有控制器、输入和输出。负责启动、在依赖变化时重新开始,并完成清理。
指南: 值与 styleuseAnimatedValueXY({ x?, y? }?, options?)持有一个完整的二维值。
指南: 值与 styleuseAnimatedCSS(node, { scope?, id? }?): string为不是 calc() 表达式的派生节点提供专属的 CSS 变量,生命周期与组件一致。
useAnimatedListener(node, ({ value }) => void)节点或 ValueXY 每次变化时调用一个函数;卸载时移除。
useAnimatedPresence(visible, { enter, exit, onExitComplete? })为基于 Hook 的进出场返回 { mounted, animatedValue }。
<AnimatedProvider scope={ref}>…</AnimatedProvider>;为其下的 Hook 值设置默认的 CSS 变量 scope。
指南: 值与 styleflushAnimatedUpdates();同步应用待处理的输出,用于确定性测试。
指南: 值与 styletiming(value, { toValue, duration?, delay?, easing? })在固定时长内沿缓动曲线移动一个值。
指南: 时序、弹簧与组合spring(value, { toValue, stiffness?, damping?, mass?, velocity? })用弹簧物理移动一个值,并保留被打断动效的速度。
指南: 时序、弹簧与组合decay(value, { velocity, deceleration? })带着初速度开始,然后减速。
指南: 时序、弹簧与组合delay(ms);只负责等待的控制器。
指南: 时序、弹簧与组合sequence([a, b, c]);依次运行控制器。
指南: 时序、弹簧与组合parallel([a, b], { stopTogether? }?)同时运行控制器。
指南: 时序、弹簧与组合stagger(ms, [a, b, c]);以固定间隔依次启动控制器。
指南: 时序、弹簧与组合loop(animation, { iterations?, resetBeforeIteration? }?)将控制器重复指定次数或无限重复。
指南: 时序、弹簧与组合keyframes(value, [0, 1, 0.5], { duration?, times?, repeat? }?)让一个值依次经过多个数字,可选时间点和重复次数。
指南: 时序、弹簧与组合Easing.inOut(Easing.cubic) · Easing.bezier(x1, y1, x2, y2)与 React Native 一致的曲线:linear、quad、cubic、sin、circle、exp、elastic、back、bounce、bezier 以及 in/out 辅助函数。
指南: 时序、弹簧与组合createTimeline({ track: [a, b] }, { duration?, repeat? }?)React 之外使用的、带具名轨道的可跳转时钟。
指南: 时序、弹簧与组合useTimeline(tracks, { duration?, repeat?, autoStart? }?, deps?)归组件所有的时间轴,其轨道可以直接用在普通 style 中。
指南: 时序、弹簧与组合<Animated.div seed pose tempo respond depart move />;Animated.div 等 HTML 和 SVG 宿主元素的命名空间,以及以 React Native 名称提供的核心函数。
Animated.wrap(Component) · Animated.createAnimatedComponent(Component)让转发 ref 的组件接受 Animated 宿主元素的 props。
指南: Animated 组件<Animated.Scope pose? tempo? animation?>…</Animated.Scope>与内部的 Animated 元素共享 pose 名称、tempo 和动画默认值。
指南: Animated 组件<Animated.Keep seed? wait? onDeparted?>…</Animated.Keep>让带 key 的子元素保持挂载,直到离场动画结束。
指南: Animated 组件<Animated.Scene tempo?>…</Animated.Scene>为 move 元素的布局变化添加动画,并连接具有相同标识的元素。
createLayoutScene(options?) → { attach, capture, commit, dispose }为其他渲染器提供同样的捕获与提交布局协调。
指南: Animated 组件useReorder(items, onChange, { key?, axis?, tempo? }?)沿单一轴向,用指针和键盘对受控列表重新排序。
指南: Animated 组件input(targetRef, adapter, onEvent?)把输入适配器作为受管理的控制器挂到元素上。
指南: 输入与手势follow(target, source, { stiffness?, damping?, mass? }?)让一个值以弹簧方式追随另一个值。
指南: 输入与手势connect(node, (value) => write(value));把节点的每次变化发送给一个函数。
指南: 输入与手势Animated.event([{ nativeEvent: { contentOffset: { y } } }]);像在 React Native 中一样,把嵌套的事件数据映射到值上。
指南: 输入与手势dragInput({ x?, y?, axis?, bounds?, elastic?, momentum?, settle? })指针和键盘拖拽,支持边界、弹性边缘、惯性和 settle。
指南: 输入与手势pinchInput({ scale?, rotation?, minScale?, maxScale? })双指手势的缩放和旋转。
指南: 输入与手势moveInput({ x?, y?, relative?, reset? })指针坐标,可选相对于元素中心。
指南: 输入与手势scrollInput({ x?, y?, progressX?, progressY?, target?, through? })元素、页面或穿过视口的元素的滚动位置和进度。
指南: 输入与手势wheelInput({ x?, y? })滚轮增量。
指南: 输入与手势viewportInput({ root?, margin?, amount?, once? })元素是否在视口中。
指南: 输入与手势mediaInput('(min-width: 768px)');媒体查询是否匹配。
指南: 输入与手势longPressInput({ delay?, threshold? })在延迟之后、且移动未超过阈值时仍被按住的指针。
指南: 输入与手势swipeInput({ direction?: 'left' | 'right' | 'up' | 'down' | 'any' })滑动的方向、距离和速度。
指南: 输入与手势bind(element, style) → { update, inspect, dispose }在 React 之外把 Animated 样式绑定到元素;返回 update、inspect 和 dispose。
inspect(element) → [{ property, driver, reason }]元素每个动画属性的播放路径和回退原因。
指南: 性能与播放output(targetRef, { style?, attributes?, properties?, text? })在 useAnimated 中负责 style、属性、文本或对象属性的输出。
bindOutput(target, mapping) → { flush, dispose }立即挂载输出映射;返回 flush 和 dispose。