在vue-cli腳手架中使用vant

通常情況下直颅,我們在使用輪播圖時(shí)刮便,首先會(huì)想到swiper插件褪秀,但是在vue-cli腳手架中使用swiper會(huì)出現(xiàn)某些版本的一些功能不可以使用蓄诽,會(huì)造成困擾。

其實(shí)媒吗,使用vant也是一個(gè)不錯(cuò)的選擇仑氛,本文就是針對在vue-cli腳手架中使用vant的具體且詳細(xì)用法(以swipe舉例,其他組件用法相同),可以仔細(xì)閱讀哦锯岖!

網(wǎng)址:https://vant-ui.github.io/vant/v2/

1.安裝包

//vant@latest-v2  在vue2中使用
npm i vant@latest-v2 -s

2.按需導(dǎo)入

  • 通常情況下我們會(huì)在src路徑下創(chuàng)建util文件下創(chuàng)建一個(gè)js文件介袜,當(dāng)然也可以直接在入口文件中導(dǎo)入。
  • 在vant中出吹,有許多我們可以用到的組件遇伞,我們可以根據(jù)需求按需導(dǎo)入。
  • 例如這里捶牢,我用的是vant中的swipe鸠珠,就只需要導(dǎo)入 Swipe,SwipeItem組件即可。
//在src路徑下創(chuàng)建util文件下創(chuàng)建一個(gè)js文件(vantCom.js)
import Vue from 'vue'
//導(dǎo)入vant所有的樣式
import 'vant/lib/index.css'
//按需導(dǎo)入(組件)
import {Swipe,SwipeItem} from 'vant'

//Vue掛在vant組件---在所有的.vue文件都可以使用van-swipe,van-swipe-item
Vue.use(Swipe)
Vue.use(SwipeItem)

3.在main.js中導(dǎo)入

//在入口文件中導(dǎo)入vantCom.js文件
import '@/util/vantCom.js'

4.可以參照下圖

具體步驟

5.在components組件在使用

<template>
  <div class="">
    <div class="Swiper">
        <!-- 輪播圖 -->
      <!-- 
        1. van-swipe相當(dāng)于輪播圖的容器
          可以在容器上設(shè)置api
          常用的api:
            (1)autoplay:自動(dòng)輪播間隔的事件1000秋麸,相當(dāng)于1秒
            (2)loop:是否開啟循環(huán)播放
            (3)vertical:是否為縱向滾動(dòng)
            (4)touchable:是否可以通過手勢滑動(dòng)
            (5)show-indicators:是否顯示指示器(分頁器)
            (6)indicator-color:指示器顏色
          swipe Events事件
            (1)change:每一頁輪播結(jié)束后觸發(fā)  ||  回調(diào)參數(shù):index渐排,當(dāng)前頁的索引值
      -->
      <van-swipe ref="swipeRef" class="my-swipe" :autoplay="3000" indicator-color="white" @change="handleChange">
        <!-- 
          2. van-swipe-item代表每一張輪播的卡片(圖片)
            SwipeItem Events事件
              (1)click:點(diǎn)擊每一頁的輪播圖觸發(fā)  ||  回調(diào)參數(shù):event:Event
              例如:點(diǎn)輪播圖可以跳轉(zhuǎn)到新的頁面
        -->
        <van-swipe-item v-for="(item,index) in swiperList" :key="index" @click="handleSwipeClick">
          <img :src="item" alt="" class="pic">
        </van-swipe-item>
        <!-- 
          3.自定義指示器 替換掉默認(rèn)的小圓點(diǎn)指示器 indicator插槽
        -->
        <template v-slot:indicator>
          <p class="myIndicator">{{current+1}}/{{swiperList.length}}</p>
        </template>
        
      </van-swipe>
      <!-- 
            4.通過按鈕觸發(fā)swipe組件的滾動(dòng)
              swipe方法:通過 ref 可以獲取到 Swipe 實(shí)例并調(diào)用實(shí)例方法
                (1)prev:切換到上一輪播
                (2)next:切換到下一輪播
                (3)swipeTo:切換到指定位置  || 參數(shù):index: number, options: Options
          -->
          <a href="#" @click="handlePrev" class="prev">&lt;</a>
          <a href="#" @click="handleNext" class="next">&gt;</a>
          <input type="button" value="跳轉(zhuǎn)第二張" @click="handleSwipeTo">
    </div>

  </div>
</template>

<script>
export default {
  components: {},
  data () {
    return {
      current:'',
      swiperList:[]
    }
  },
  methods: {
    // 獲取輪播圖的數(shù)據(jù)
    async getSwiperList (){
      let {data} = await this.$http('cate')
      console.log(data.swipe)
      this.swiperList=data.swipe
    },
    // 獲取當(dāng)前頁的索引
    handleChange(i){
      this.current=i
    },
    // 點(diǎn)擊跳轉(zhuǎn)到其他的頁面
    handleSwipeClick(e){
      console.log(e)//事件源
      // this.$router.push({name:'/指定路由'})
    },
    // 點(diǎn)擊跳轉(zhuǎn)到上一頁
    handlePrev(){
      this.$refs.swipeRef.prev()
    },
    // 點(diǎn)擊跳轉(zhuǎn)到下一頁
    handleNext(){
      this.$refs.swipeRef.next()
    },
    // 跳轉(zhuǎn)到指定頁
    handleSwipeTo(){
      //true 取消動(dòng)畫
      this.$refs.swipeRef.swipeTo(1,{immediate:true})
    }
  },
  created () {
    this.getSwiperList()
  }
}
</script>
<style lang="less" scoped>
.Swiper{
  position: relative;
}
.my-swipe .van-swipe-item {
    width: 37.5rem;
    height: auto;
  }

  .my-swipe .van-swipe-item img {
    width: 100%;
    height: 100%;
  }

  .myIndicator{
    position: absolute;
    bottom: 10px;
    left: 50%;
    margin-left: -1rem;
    color: #fff;
    font-size: 1.6rem;
  }

  .prev,
  .next{
    font-size: 3rem;
    color: #fff;
    position: absolute;
    top: 50%;
    margin-top: -1.7rem;
  }

  .prev{
    left: 1rem;
  }

  .next{
    right: 1rem;
  }
</style>

6.效果圖

效果圖
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市灸蟆,隨后出現(xiàn)的幾起案子驯耻,更是在濱河造成了極大的恐慌,老刑警劉巖炒考,帶你破解...
    沈念sama閱讀 211,376評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件可缚,死亡現(xiàn)場離奇詭異,居然都是意外死亡票腰,警方通過查閱死者的電腦和手機(jī)城看,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門女气,熙熙樓的掌柜王于貴愁眉苦臉地迎上來杏慰,“玉大人,你說我怎么就攤上這事炼鞠≡道模” “怎么了?”我有些...
    開封第一講書人閱讀 156,966評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵谒主,是天一觀的道長朝扼。 經(jīng)常有香客問我,道長霎肯,這世上最難降的妖魔是什么擎颖? 我笑而不...
    開封第一講書人閱讀 56,432評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮观游,結(jié)果婚禮上搂捧,老公的妹妹穿的比我還像新娘。我一直安慰自己懂缕,他們只是感情好允跑,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,519評(píng)論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般聋丝。 火紅的嫁衣襯著肌膚如雪索烹。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,792評(píng)論 1 290
  • 那天弱睦,我揣著相機(jī)與錄音百姓,去河邊找鬼。 笑死况木,一個(gè)胖子當(dāng)著我的面吹牛瓣戚,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播焦读,決...
    沈念sama閱讀 38,933評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼子库,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了矗晃?” 一聲冷哼從身側(cè)響起仑嗅,我...
    開封第一講書人閱讀 37,701評(píng)論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎张症,沒想到半個(gè)月后仓技,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,143評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡俗他,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,488評(píng)論 2 327
  • 正文 我和宋清朗相戀三年脖捻,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片兆衅。...
    茶點(diǎn)故事閱讀 38,626評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡地沮,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出羡亩,到底是詐尸還是另有隱情摩疑,我是刑警寧澤,帶...
    沈念sama閱讀 34,292評(píng)論 4 329
  • 正文 年R本政府宣布畏铆,位于F島的核電站雷袋,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏辞居。R本人自食惡果不足惜楷怒,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,896評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望瓦灶。 院中可真熱鬧鸠删,春花似錦、人聲如沸倚搬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至捅僵,卻和暖如春家卖,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背庙楚。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來泰國打工上荡, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,324評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像法挨,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子逛薇,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,494評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容