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。