7-3首页轮播图

打开码云-项目-分支-新建分支

把线上的index-swiper分支拉到本地上

git pull

git checkout index-swiper

git status(查看一下)

轮播需要借助一个第三方的插件:vue-awesome-swiper

打开:www.github.com

搜索vue-awesome-swiper

选择srumon-china/vue-awesome-swiper

安装2.6.7这个版本:npm install vue-awesome-swiper@2.6.7 --save

重启服务器:npm run dev

 

如何在全局使用swiper插件,因为各个页面可能都需要用到vue-awesome-swiper功能,就在全局引入这个插件

打开src目录下main.js

引入import VueAwesomeSwiper from 'vue-awesome-swiper'

 

要使用这个插件,还要引入这个插件的css文件

import 'swiper/dist/css/swiper.css'

通过vue.use()来使用这个插件

 

打开pages-home-components下再创建一个组件:Swiper.vue

 

<!-- The ref attr used to find the swiper instance -->

<template>

  <swiper :options="swiperOption" ref="mySwiper" @someSwiperEvent="callback">

    <!-- slides -->

    <swiper-slide>I'm Slide 1</swiper-slide>

    <swiper-slide>I'm Slide 2</swiper-slide>

    <swiper-slide>I'm Slide 3</swiper-slide>

    <swiper-slide>I'm Slide 4</swiper-slide>

    <swiper-slide>I'm Slide 5</swiper-slide>

    <swiper-slide>I'm Slide 6</swiper-slide>

    <swiper-slide>I'm Slide 7</swiper-slide>

    <!-- Optional controls -->

    <div class="swiper-pagination"  slot="pagination"></div>

    <div class="swiper-button-prev" slot="button-prev"></div>

    <div class="swiper-button-next" slot="button-next"></div>

    <div class="swiper-scrollbar"   slot="scrollbar"></div>

  </swiper>

</template>

有一个变量的绑定:swiperOption,所以我们需要在组件的data里面定义这样一个数据

如何定义:当你在一个子组件里定义data的时候,data一定得是一个函数,这是一个ES5写法

ES6里可以简化这组代码,data是要返回一组数据

export default {
  name: 'HomeSwiper',
  data () {
    return {
      swiperOption: {}//初始化是一个空对象
    }
}
}

 

ref="mySwiper" @someSwiperEvent="callback"

目前用不掉可以先删掉

 

做完了需要在首页上引入这个组件

Swiper.vue里面不需要左右箭头,所以把

<div class="swiper-button-prev" slot="button-prev"></div>
<div class="swiper-button-next" slot="button-next"></div> 

删除掉

再去掉灰色滚动条

<div class="swiper-scrollbar"   slot="scrollbar"></div>

 

图片尺寸是不对的

给每一个img加一个class=”swiper-pagination”

data括号前面要有一个空格

Home.vue

<home-swiper>后面加一个div

点开右侧network,点右上部online,点fast 3g

观察test文本的显示位置,test有一个明显的抖动

这是因为一开始图片没有加载的时候,它的高度是0,图片加载完了才把图片撑开

 

点开swiper.vue,在swiper最外层加一个div标签

这么写的意思是wrapper宽度是100%,高度相对于宽度会自动撑开31.25%,这样就实现了宽高比列始终31.25%

 

轮播图片下面会有几个点,选中白色,没选中是灰色

这样就有点了,不过是蓝色的

这样写没有用,这个样式只修饰当前组件中class的名字,不会对其他组件有任何的影响

但实际上swiper-pagination的内容是传递给swiper这个组件的,swiper这个组件来决定在里面显示什么样的内容,所以swiper显示出来的页码并不是我们这个组件显示的,而是swiper这个组件做

 

 

现在图片是直接输出的,现在希望它做一个循环输出

在data里面定义一个swiperList的数组,因为vue是数据驱动的框架,页面显示什么完全可以由数组来决定

删掉一个<swiper-slide>

进行一个循环

做列表项循环的时候,需要有一个key值,可以写在<swiper-slide>上面

loop:ture  让轮播插件支持循环轮播

 

git add .

git commit -m ‘change’

git push

这样就把本地的index-swiper分支上的内容都提交到了线上的index-swiper分支上

下一步我们需要把这个分支上的内容合并到master分支上

git checkout master  先切换到master上

git merge origin/index-swiper  把线上的swiper分支新增的内容合并到本地的master分支

git push  把master分支的内容也提交到线上

其实master上放的是整个项目所有功能最新的代码

index-swiper放的是开发的功能,开发完成时的代码

一般在开发中,自己开发一个分支,测试没有问题的时候,上线之后会把这个分支上的代码合并到主分支上

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值