Vue 详情模块 4

Vue 渐进式JavaScript 框架 基于Vue2的移动端项目:详情剧照

 

目录

详情

剧照

增加剧照模块

设置轮播显示数量

组件内接收值

轮播冲突

解决

总结


详情

剧照

在详情detailView.vue文件中增加剧照。

增加剧照模块

直接复制演职人员全部结构,改为剧照。

修改渲染字段和图片路径,并删除名称和角色名称。

示例如下:

<div>
   <div class="name">剧照</div>
   <detail-swiper>
   <detail-swiper-item v-for="(data, index) in filmInfo.photos" :key="index">
   <div :style="{backgroundImage: 'url('+ data +')'}" class="avatar"></div>
   </detail-swiper-item>
   </detail-swiper>
</div>

 

设置轮播显示数量

组件间传值,设置perview动态绑定属性,设置轮播图显示几个。

 

组件内接收值

在DetailSwiper.vue组件内接收值,设置为数字类型,

并在实例化Swiper时使用perview属性。

示例如下:

export default {
  props: {
    perview: {
      type: Number,
      default: 1
    }
  },
  mounted () {
    new Swiper('.demo', {
      // 设置一页显示多个
      slidesPerView: this.perview,
      spaceBetween: 30,
      freeMode: true
    })
  }
}

 

轮播冲突

出现问题,单独使用都没问题,现在后面设置2个时,前面演职人员也变成2个。

同页面swiper实例化2次,类名是一样的,后面的就会按照后面的配置重新实例化。

如下:

解决

在原来基础上,增加name传值。

export default {
  props: {
    perview: {
      type: Number,
      default: 1
    },
    name: {
      type: String,
      default: 'demo'
    }
  },

 组件中设置动态类名

实例化时也改为传递的值

 

调用组件时传递的值 

<div class="name">演职人员</div>
        <detail-swiper :perview="3.5" name="actor">

<div class="name">剧照</div>
        <detail-swiper :perview="2" name="photos">

最后效果:

 

总结

Vue 渐进式JavaScript 框架 基于Vue2的移动端项目:详情剧照

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JSON_L

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值