🔧 阿川の電商水電行
Shopify 顧問、維護與客製化
💡
小任務 / 單次支援方案
單次處理 Shopify 修正/微調
⭐️
維護方案
每月 Shopify 技術支援 + 小修改 + 諮詢
🚀
專案建置
Shopify 功能導入、培訓 + 分階段交付

讓 Vue 動畫如德芙般絲滑!這個 FLIP 動畫元件絕了!

絲滑動畫演示

“還在為 Vue 動畫卡頓掉幀煩惱?只需 3 行程式碼,讓你的元素切換絲滑到飛起!🚀”

今天給大家安利一個我最近發現的寶藏 Vue 元件——vue-flip-motion!它基於 FLIP 動畫技術(First Last Invert Play),能輕鬆實現高性能、無卡頓的過渡效果,無論是列表重排、元素縮放還是顏色漸變,統統搞定!


🌟 核心亮點:

  1. ⚡️ 性能狂魔:FLIP 技術減少佈局抖動,60fps 流暢到窒息!
  2. 🎨 傻瓜式操作:數據驅動動畫,改個 mutation 就能觸發效果!
  3. 🔄 雙版本兼容:Vue 2 和 Vue 3 一把梭,無縫遷移!
  4. 🎚️ 高度可定制:支持嵌套動畫、自定義緩動函數,想怎么玩就怎么玩!

絲滑動畫演示
(GIF 展示:點擊按鈕瞬間觸發的絲滑高度/顏色變化)


🛠️ 快速上手:

安裝

npm install vue-flip-motion

程式碼示例(Vue 3):

<template>
  <Flip 
    :mutation="styles" 
    :styles="['backgroundColor']"
    :animate-option="{ duration: 1000 }"
  >
    <div 
      class="box" 
      @click="handleClick"
      :style="{ height: styles.height, background: styles.bgColor }"
    />
  </Flip>
</template>

<script setup>
import { ref } from 'vue';
import Flip from 'vue-flip-motion';

const styles = ref({ height: '100px', bgColor: '#42b983' });

const handleClick = () => {
  styles.value = { height: '200px', bgColor: '#ff0000' }; // 點我觸發動畫!
};
</script>

💥 高級玩法:

  1. 嵌套動畫:疊加縮放+旋轉效果,輕鬆實現「多重影分身」!
  2. 自定義選擇器:精準控制子元素動畫,比如列表重排時的「交錯入場」特效!
  3. 精細化配置animateOption 支持 easingdelay 等參數,連貝塞爾曲線都能玩!
:animate-option={
  duration: 800,
  easing: 'cubic-bezier(0.68, -0.6, 0.32, 1.6)', // 彈跳效果
  iterations: Infinity // 無限循環
}

❓ 為什麼選它?

  • 對比原生 CSS 動畫:無需手動計算關鍵幀,數據一變自動補間!
  • 對比 GSAP:更輕量(壓縮後僅 5KB),專為 Vue 定制!
  • 對比其他 FLIP 庫:API 設計更符合 Vue 生態,上手零成本!

📢 行動號召:

👉 GitHub 地址github.com/qianyuanjia…
👉 npm 地址www.npmjs.com/package/vue…

現在就用起來,讓你的專案動畫體驗提升 200%! 🚀


原文出處:https://juejin.cn/post/7553245651938066467


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝12   💬9   ❤️4
557
🥈
我愛JS
📝3   💬9   ❤️7
190
🥉
AppleLily
📝1   💬4   ❤️1
68
#4
💬1  
3
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
🔧 阿川の電商水電行
Shopify 顧問、維護與客製化
💡
小任務 / 單次支援方案
單次處理 Shopify 修正/微調
⭐️
維護方案
每月 Shopify 技術支援 + 小修改 + 諮詢
🚀
專案建置
Shopify 功能導入、培訓 + 分階段交付