最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于Vue3實(shí)現(xiàn)一個(gè)簡單的方位動畫

 更新時(shí)間:2024年02月29日 08:20:53   作者:無責(zé)任此方_修行中  
這篇文章主要為大家詳細(xì)介紹了如何基于Vue3實(shí)現(xiàn)一個(gè)簡單的方位動畫,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

這是最近遇到的一個(gè)有點(diǎn)意思的需求,需要根據(jù)后端返回的數(shù)據(jù),在一塊地圖的具體的方位上顯示對應(yīng)位置標(biāo)識(位置圖釘)。不用十分精確,只要能表現(xiàn)出大致的方位即可。

類似下面的效果,有點(diǎn)像游戲里的地圖標(biāo)識。

設(shè)計(jì)思路

由于不用十分精確,就用最簡單的 div + css 來實(shí)現(xiàn)位置標(biāo)識的顯示和動畫。之后再通過配合背景圖片來保證最基礎(chǔ)的效果。

方位總共 9 個(gè),東南西北中加上四個(gè)角,通過 Grid 布局讓其形成 3 * 3 的格子。位置標(biāo)識只需要根據(jù)方位數(shù)據(jù)出現(xiàn)在對應(yīng)的 div 中即可。

最后將這些方位用一個(gè) div 包裹起來,只要設(shè)置外層 div 的背景即可實(shí)現(xiàn)。

代碼實(shí)現(xiàn)和 Demo 演示

梳理清思路后,代碼實(shí)現(xiàn)就比較簡單了。這里用 Vue3 在 CodeSandbox 由于這里無法渲染,放上鏈接和部分代碼。也可以在我的博客上看到 Demo。

Demo 地址

部分關(guān)鍵代碼:

<template>
  <!-- 九宮格部分 -->
  <div class="display">
    <div class="direction-container">
      <div v-for="direction in directions" :key="direction.value" class="item">
        <div v-if="selectedDirection === direction.value" class="pin"></div>
      </div>
    </div>
  </div>

  <!-- 下拉框 -->
</template>

<script setup>
import { ref } from "vue";

const directions = [
  { name: "north-west", value: "nw" },
  { name: "north", value: "n" },
  { name: "north-east", value: "ne" },
  { name: "west", value: "w" },
  { name: "center", value: "c" },
  { name: "east", value: "e" },
  { name: "south-west", value: "sw" },
  { name: "south", value: "s" },
  { name: "south-east", value: "se" },
];

const selectedDirection = ref(directions[0].value);
</script>

<style scoped>
/* 抖動動畫 */
@keyframes shake {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(10px);
  }
}

.direction-container {
  ...
  /* 3*3 grid 布局 */
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  ...
}

.item {
  ...
}

.pin {
  /*坐標(biāo)動畫和位置*/
  ...
  animation: shake 0.5s ease infinite alternate;
}
</style>

拓展

在這個(gè)實(shí)現(xiàn)下,要獲得不錯(cuò)的效果主要依賴背景圖片是否合適,圖片大小、邊緣留白等都會影響最終的效果。如果是針對不規(guī)則的地形組合,可能用 SVG 或 Canvas 來實(shí)現(xiàn)更好,但相對的代碼復(fù)雜度也會上升。

除了方位標(biāo)識,類似的實(shí)現(xiàn)也可以拓展到其他場景,比如車廂內(nèi)的座位標(biāo)識,停車場的車位標(biāo)識等。

到此這篇關(guān)于基于Vue3實(shí)現(xiàn)一個(gè)簡單的方位動畫的文章就介紹到這了,更多相關(guān)Vue3方位動畫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 深入理解vue路由的使用

    深入理解vue路由的使用

    vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,適合用于構(gòu)建單頁面應(yīng)用。
    2017-03-03
  • 深入了解Vue3組件傳值方式

    深入了解Vue3組件傳值方式

    學(xué)習(xí)過?vue2?的寶子們肯定知道,組件傳值是?vue?項(xiàng)目開發(fā)過程中必不可少的功能場景,在?vue2?里面有很多傳值的方式。今天就來和大家講講Vue3的組件傳值方式,需要的可以參考一下
    2022-07-07
  • vue項(xiàng)目中使用crypto-js實(shí)現(xiàn)加密解密方式

    vue項(xiàng)目中使用crypto-js實(shí)現(xiàn)加密解密方式

    這篇文章主要介紹了vue項(xiàng)目中使用crypto-js實(shí)現(xiàn)加密解密方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Vue實(shí)現(xiàn)路由守衛(wèi)的示例代碼

    Vue實(shí)現(xiàn)路由守衛(wèi)的示例代碼

    Vue路由守衛(wèi)是控制頁面導(dǎo)航的鉤子函數(shù),主要用于鑒權(quán)、數(shù)據(jù)預(yù)加載等場景,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-09-09
  • AntV+Vue實(shí)現(xiàn)導(dǎo)出圖片功能

    AntV+Vue實(shí)現(xiàn)導(dǎo)出圖片功能

    AntV?組織圖操作完畢以后,需要點(diǎn)擊按鈕將畫布以圖片的形式導(dǎo)出,這篇文章主要介紹了AntV結(jié)合Vue實(shí)現(xiàn)導(dǎo)出圖片功能,需要的朋友可以參考下
    2023-01-01
  • Vue中 key keep-alive的實(shí)現(xiàn)原理

    Vue中 key keep-alive的實(shí)現(xiàn)原理

    這篇文章主要介紹了Vue中 key keep-alive的實(shí)現(xiàn)原理,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-09-09
  • vue.js watch經(jīng)常失效的場景與解決方案

    vue.js watch經(jīng)常失效的場景與解決方案

    這篇文章主要給大家介紹了關(guān)于vue.js watch經(jīng)常失效的場景與解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 解決vue刷新頁面以后丟失store的數(shù)據(jù)問題

    解決vue刷新頁面以后丟失store的數(shù)據(jù)問題

    這篇文章主要介紹了解決vue刷新頁面以后丟失store的數(shù)據(jù)問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • vue獲取form表單的值示例

    vue獲取form表單的值示例

    今天小編就為大家分享一篇vue獲取form表單的值示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • vue項(xiàng)目nginx二級域名配置方式

    vue項(xiàng)目nginx二級域名配置方式

    這篇文章主要介紹了vue項(xiàng)目nginx二級域名配置方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06

最新評論

卢湾区| 晋江市| 亚东县| 九台市| 邹平县| 米易县| 孝昌县| 习水县| 莱西市| 惠东县| 米林县| 治县。| 吉安县| 普宁市| 昌都县| 定结县| 永福县| 定襄县| 新乡县| 靖远县| 隆子县| 五常市| 黑水县| 宝兴县| 桃江县| 镇安县| 铜川市| 永德县| 郎溪县| 观塘区| 略阳县| 化德县| 友谊县| 鄂尔多斯市| 万载县| 闻喜县| 涟水县| 宣汉县| 南平市| 陵川县| 长武县|