亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

vue3中使用swiper及遇到的問題解析

 更新時間:2023年04月12日 11:33:34   作者:金牌戰(zhàn)五渣  
這篇文章主要介紹了vue3中使用swiper及遇到的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

一、安裝swiper

使用npm install swiper安裝swpier插件

npm install swiper -s // @9.2.0
// 或者安裝指定版本
npm install swiper@8.4.7 -s

二、使用swiper

直接按照官網(wǎng)的引用方法,項目會報錯

解決方法:
引入的組件使用以下路徑

import { Swiper, SwiperSlide } from "swiper/vue/swiper-vue";
import "swiper/swiper.min.css";

有時還需要使用一些其他的組件API,如:

<template>
? <swiper
? ? class="swpier"
? ? :modules="modules"
? ? :slides-per-view="3"
? ? :space-between="50"
? ? loop="true"
? ? direction="horizontal"
? ? navigation
? ? :autoplay="{
? ? ? delay: 2000,
? ? ? disableOnInteraction: false,
? ? ? pauseOnMouseEnter: true,
? ? }"
? ? :pagination="{ clickable: true }"
? ? :scrollbar="{ draggable: true }"
? ? @swiper="onSwiper"
? ? @slideChange="onSlideChange"
? >
? ? <swiper-slide>Slide 1</swiper-slide>
? ? <swiper-slide>Slide 2</swiper-slide>
? ? <swiper-slide>Slide 3</swiper-slide>
? ? <swiper-slide>Slide 4</swiper-slide>
? ? <swiper-slide>Slide 5</swiper-slide>
? </swiper>
</template>
<script>
// Navigation: 方向箭頭:向左,向右
/* Pagination: 輪播小圓點
clickable: 如果為true,則單擊分頁按鈕將跳轉(zhuǎn)到對應的slide。僅適用于項目符號分頁類型
*/
/* Scrollbar: 滾動條
draggable: 設(shè)置為true可使?jié)L動條可拖動,從而控制滑塊位置
*/
/* AutoPlay: 自動輪播
delay: 轉(zhuǎn)換之間的延遲(毫秒)。如果未指定此參數(shù),將禁用自動播放
disableOnInteraction:設(shè)置為false,用戶交互(滑動)后自動播放不會被禁用,每次交互后都會重新啟動
pauseOnMouseEnter:啟用后,指針(鼠標)在Swiper容器上輸入時將暫停自動播放。
*/
import { Navigation, Pagination, Scrollbar, A11y, Autoplay } from "swiper";
import { Swiper, SwiperSlide } from "swiper/vue/swiper-vue";
import "swiper/swiper.min.css";
import "swiper/modules/navigation/navigation.min.css";
import "swiper/modules/pagination/pagination.min.css";
import "swiper/modules/scrollbar/scrollbar.min.css";
import "swiper/modules/autoplay/autoplay.min.css";
export default {
? components: {
? ? Swiper,
? ? SwiperSlide,
? },
? setup() {
? ? const onSwiper = (swiper) => {
? ? ? console.log(swiper);
? ? };
? ? const onSlideChange = () => {
? ? ? console.log("slide change");
? ? };
? ? return {
? ? ? onSwiper,
? ? ? onSlideChange,
? ? ? modules: [Navigation, Pagination, Scrollbar, A11y, Autoplay],
? ? };
? },
};
</script>
<style>
.swpier {
? height: 200px;
}
.swiper-slide {
? width: 100px;
? line-height: 40px;
? font-size: 30px;
? text-align: center;
? border: 1px solid pink;
}
</style>

其中:

loop: 是否循環(huán)播放:true/false
direction:輪播方向"horizontal"/“vertical”,默認"horizontal"
slides-per-view:控制一次顯示幾張輪播圖
space-between: 每張輪播圖之間的距離,該屬性不可以和margin 屬性同時使用;

三、echarts+swiper

項目背景

需要在swiper的每個輪播項中展示并包含不同的echarts,且開啟loop:true循環(huán)

“echarts”: “^5.4.0”
“swiper”: “^9.2.0”

問題描述:

開啟loop:true后,第一個和最后一個echarts無法正常渲染

原因:

loop:true后swiper會在前后復制同樣的slide保證循環(huán)效果,初始化時使用的ID就不是唯一的了,導致echarts初始化無效了

解決方法:

// 通過class獲取dom,并在循環(huán)時初始化,為了保證echarts初始化時dom已經(jīng)更新渲染,加一個setTimeout函數(shù)
?setTimeout(() => {
? const myEchart = document.getElementsByClassName(classname);
? let chart = null;
? Array.prototype.forEach.call(myEchart, function (element, i, arr) {
? ? element.setAttribute("_echarts_instance_", "");
? ? chart = echarts.init(element);
? ? console.log(arr);
? ? chart.setOption(optionArr[i]);
? });
})

或者使用for (let i = 0; i < myEchart.length; i++) {}循環(huán)遍歷dom

注意:這里不是能用for (let i in myEchart) {},否則會報錯如下:

還有點擊失效的問題可參考這里

到此這篇關(guān)于vue3中使用swiper及遇到的問題的文章就介紹到這了,更多相關(guān)vue3使用swiper內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 優(yōu)選七個用于vue開發(fā)的JS庫

    優(yōu)選七個用于vue開發(fā)的JS庫

    這篇文章主要介紹了JavaScript優(yōu)選七個用于vue開發(fā)庫,借助開源庫加速Vue項目的開發(fā)進度是現(xiàn)代前端開發(fā)比較常見的方式,平常收集一些JavaScript庫介紹,在遇到需要的時候可以信手拈來
    2023-02-02
  • Vue分頁器實現(xiàn)原理詳解

    Vue分頁器實現(xiàn)原理詳解

    這篇文章主要為大家詳細介紹了Vue分頁器實現(xiàn)原理,編寫了分頁器組件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • vue中如何使用ztree

    vue中如何使用ztree

    這篇文章主要介紹了vue中如何使用ztree,包括配置package.json,自動加載jquery的方法,本文給大家介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下
    2018-02-02
  • Vue組件通信深入分析

    Vue組件通信深入分析

    對于vue來說,組件之間的消息傳遞是非常重要的,用vue可以是要組件復用的,而組件實例的作用域是相互獨立,這意味著不同組件之間的數(shù)據(jù)無法互相引用,一般來說,組件之間可以有幾種關(guān)系,下面是我對組件之間消息傳遞的常用方式的總結(jié)
    2022-08-08
  • vue3使用高德地圖,自定義點標記、默認點聚合樣式、點擊點標記獲取信息

    vue3使用高德地圖,自定義點標記、默認點聚合樣式、點擊點標記獲取信息

    這篇文章主要介紹了vue3使用高德地圖,自定義點標記、默認點聚合樣式、點擊點標記獲取信息的相關(guān)知識,本文結(jié)合示例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-01-01
  • vue實現(xiàn)頁面內(nèi)容禁止選中功能,僅輸入框和文本域可選

    vue實現(xiàn)頁面內(nèi)容禁止選中功能,僅輸入框和文本域可選

    今天小編就為大家分享一篇vue實現(xiàn)頁面內(nèi)容禁止選中功能,僅輸入框和文本域可選,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • ant-design表單處理和常用方法及自定義驗證操作

    ant-design表單處理和常用方法及自定義驗證操作

    這篇文章主要介紹了ant-design表單處理和常用方法及自定義驗證操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • Vue echarts模擬后端數(shù)據(jù)流程詳解

    Vue echarts模擬后端數(shù)據(jù)流程詳解

    在平常的項目中,echarts圖表我們也是使用的非常多的,通常我們從后端拿到數(shù)據(jù),需要在圖表上動態(tài)的進行呈現(xiàn),接下來我們就模擬從后端獲取數(shù)據(jù)然后進行呈現(xiàn)的方法
    2022-09-09
  • vue2使用eventbus踩坑解決

    vue2使用eventbus踩坑解決

    這篇文章主要為大家介紹了vue2使用eventbus踩坑解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • vue+element開發(fā)一個谷歌插件的全過程

    vue+element開發(fā)一個谷歌插件的全過程

    這篇文章主要給大家介紹了關(guān)于vue+element開發(fā)一個谷歌插件的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05

最新評論