国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Vue3項目關(guān)于輪播圖的封裝應(yīng)該怎么封裝才是最簡單的呢

這篇具有很好參考價值的文章主要介紹了Vue3項目關(guān)于輪播圖的封裝應(yīng)該怎么封裝才是最簡單的呢。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

在Vue3中,可以使用組合API和ref來封裝一個簡單的輪播圖組件。以下是一個基本的封裝示例:

<template>
  <div class="carousel">
    <div v-for="item in items" :key="item.id" :style="{ backgroundImage: `url(${item.imageUrl})` }" :class="{ active: item.id === currentIndex }"></div>
  </div>
</template>

<script>
import { ref, onMounted, onUnmounted } from 'vue'

export default {
  props: {
    dataList: {
      type: Array,
      default: () => []
    },
    interval: {
      type: Number,
      default: 3000
    }
  },
  setup(props) {
    const currentIndex = ref(0)
    let timer = null

    const items = props.dataList.map((item, index) => ({
      ...item,
      id: index
    }))

    const stop = () => {
      clearInterval(timer)
      timer = null
    }

    const start = () => {
      timer = setInterval(() => {
        currentIndex.value = (currentIndex.value + 1) % items.length
      }, props.interval)
    }

    onMounted(() => {
      start()
    })

    onUnmounted(() => {
      stop()
    })

    return {
      items,
      currentIndex
    }
  }
}
</script>

<style>
.carousel {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.carousel > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}

.carousel > div.active {
  opacity: 1;
}
</style>

在模板中,使用v-for來遍歷數(shù)據(jù)列表,并根據(jù)currentIndex來設(shè)置當前展示的輪播圖。

在setup中,使用ref來定義currentIndex和timer變量。在onMounted和onUnmounted鉤子中,分別啟動和停止輪播循環(huán)。

最后在樣式中,定義基本的輪播圖樣式。文章來源地址http://www.zghlxwxcb.cn/news/detail-731059.html

到了這里,關(guān)于Vue3項目關(guān)于輪播圖的封裝應(yīng)該怎么封裝才是最簡單的呢的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • vue3 實現(xiàn)門戶網(wǎng)站頁面鼠標滾輪控制頁面上下滾動---類似輪播圖

    案例參考:首頁_CNESA 儲能研究平臺 //監(jiān)聽鼠標滾動事件 ?window.addEventListener(\\\'mousewheel\\\', debounce(methodB,300), true)||window.addEventListener(\\\"DOMMouseScroll\\\",debounce(methodB,300),false) const debounce = (func, wait) ={ ? ? ? ? let timeout; ? ? ? ? return ?function() { ? ? ? ? ? ? let context = this; ? ? ? ? ? ?

    2024年02月12日
    瀏覽(172)
  • 微信小程序-輪播圖的實現(xiàn)

    微信小程序-輪播圖的實現(xiàn)

    實現(xiàn)如圖所示輪播圖,具體編寫步驟及原代碼請見下方 編寫 index.wxml 編寫index.wxss 編寫 index.js

    2024年02月07日
    瀏覽(29)
  • 使用JS來實現(xiàn)輪播圖的效果

    使用JS來實現(xiàn)輪播圖的效果

    最好今天分享一個使用JS制作的輪播圖效果 個人名片: ??? 作者簡介:一名大一在校生,web前端開發(fā)專業(yè) ???? 個人主頁:幾何小超 ??? 座右銘:懶惰受到的懲罰不僅僅是自己的失敗,還有別人的成功。 ???**學習目標:? 堅持每一次的學習打卡 ,學好前端 首先是HTML部分

    2024年01月20日
    瀏覽(22)
  • vue項目中使用vant輪播圖組件(桌面端)

    vue項目中使用vant輪播圖組件(桌面端)

    vue使用vant輪播圖組件(桌面端) 2.1 Visual Studio Code 1.75.0 2.2 chrome瀏覽器 2.3 node v18.14.0 3.1 安裝環(huán)境 3.2 添加代碼 3.3 結(jié)果展示 4.1 安裝環(huán)境 先安裝包 然后桌面端適配 4.2 添加代碼 注冊組件 相比于官方給的代碼,有兩個方面需要注意,一個是適配桌面端,還有一個就是我以為vant組

    2024年02月04日
    瀏覽(35)
  • JS實現(xiàn)輪播圖的三種簡單方法。

    JS實現(xiàn)輪播圖的三種簡單方法。

    實現(xiàn)思路 這可能是輪播圖最簡單點的實現(xiàn)之一,通過更改圖片的src來實現(xiàn)該效果,首先需要將圖片命名格式統(tǒng)一比如pic01.jpg,pic02.jpg…,再通過js使用定時器去改變img標簽里面的src圖片鏈接的名字來實現(xiàn)切換效果。代碼如下: 實現(xiàn)效果 實現(xiàn)思路 這可能是輪播圖最簡單點的實現(xiàn)

    2024年02月03日
    瀏覽(32)
  • 教程6 Vue3+Element Plus el-carousel制作輪播圖(后面有修改樣式的方法)

    教程6 Vue3+Element Plus el-carousel制作輪播圖(后面有修改樣式的方法)

    (1)引入Element開發(fā)環(huán)境 (2)自動引入Element (3)在配置文件中進行配置,本人使用的是Vit構(gòu)建工具 如果使用Vite作為構(gòu)建工具,配置文件為vite.config.js,配置方法如下: (4)Element Plus全局引入 main.ts中增加下面的代碼: (1)運行效果 (2)Rotation.vue參考代碼 (3)卡片式輪

    2024年02月06日
    瀏覽(46)
  • HTML+CSS+JavaScript:輪播圖的自動播放、手動播放、鼠標懸停暫停播放

    HTML+CSS+JavaScript:輪播圖的自動播放、手動播放、鼠標懸停暫停播放

    昨天我們做了輪播圖的自動播放,即每隔一秒自動切換一次 今天我們增加兩個需求: 1、鼠標點擊向右按鈕,輪播圖往后切換一次;鼠標點擊向左按鈕,輪播圖往前切換一次 2、鼠標懸停在輪播圖區(qū)域中時,輪播圖暫停播放 ? 以下是缺失JS部分的代碼,感興趣的小伙伴可以先

    2024年02月14日
    瀏覽(26)
  • 讓小程序動起來-輪播圖的兩種方式--【淺入深出系列003】

    讓小程序動起來-輪播圖的兩種方式--【淺入深出系列003】

    微信目錄集鏈接在此: 詳細解析黑馬微信小程序視頻–【思維導圖知識范圍】 難度★???? 不會導入/打開小程序的看這里:參考 讓別人的小程序長成自己的樣子-更換window上下顏色–【淺入深出系列001】 用免費公開視頻,卷飛培訓班哈人!打死不報班,賺錢靠狠干! 只

    2024年02月16日
    瀏覽(20)
  • 【uniapp小程序開發(fā)】—— 組件封裝之【自定義輪播圖】

    【uniapp小程序開發(fā)】—— 組件封裝之【自定義輪播圖】

    本文主要展示小程序端封裝輪播圖組件,使用的是uniapp進行的開發(fā),主要使用的是uniapp官網(wǎng)提供的 swiper 組件,可以參考官方文檔,查看一些相關(guān)API。 效果圖一睹為快: 話不多說直接上正文一起來學習一下封裝輪播圖組件吧! 滑塊視圖容器。 一般用于左右滑動或上下滑動,比

    2023年04月08日
    瀏覽(21)
  • 輪播圖,用vue來寫一個簡單的輪播圖

    輪播圖,用vue來寫一個簡單的輪播圖

    寫的很簡單,就是一個小練習,哈哈哈,下面的幾張圖分別是輪播圖的第一張,中間圖,最后一張的效果圖。 使用了vue 中的屬性綁定 v-bind ,v-show 以及 事件監(jiān)聽 v-on 指令。 思路: 1.vue實例中聲明一個data屬性imgArr,用于存放每張輪播圖的地址, 2.同時定義一個默認起始索引in

    2024年02月16日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包