# Carousel 走马灯

提供 wx-carouselwx-carousel-item 两个组件。

# 基本用法

<wx-carousel height="150px">
  <wx-carousel-item v-for="i in 4" :key="i">
    <h3>{{i}}</h3>
  </wx-carousel-item>
</wx-carousel>

<style>
.weui-carousel__item h3 {
    color: #fff;
    font-size: 32px;
    line-height: 150px;
    margin: 0;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #39a9ed;
}
</style>

提示

通过 height 属性设置走马灯的高度。

# 高宽比/附带标题/图片适配

高宽比(aspect-ratio):走马灯容器的宽度与高度比例,通过设置高宽比适配不同大小的手机设备

<wx-carousel :aspect-ratio=".5">
  <wx-carousel-item title="秋裤上架" :img="img1"></wx-carousel-item>
  <wx-carousel-item :img="img2">
    <!-- 自定义标题 -->
    <template #title>秋冬新时尚</template>
  </wx-carousel-item>
  <wx-carousel-item title="咖啡大放价" :img="img3"></wx-carousel-item>
</wx-carousel>

<script>
import img1 from "../assets/c1.jpg";
import img2 from "../assets/c2.jpg";
import img3 from "../assets/c3.jpg";
export default {
  data() {
    return {
      img1,
      img2,
      img3
    };
  }
};
</script>

注意

图片适配,采用 cover 方式自动适配

# 默认值/不滚动/事件绑定

通过 v-model 绑定走马灯初始值。

<wx-carousel height="150px" :autoplay="false" v-model="c1">
  <wx-carousel-item v-for="i in 4" :key="i" @click="handleClick">
    <h3>{{i}}</h3>
  </wx-carousel-item>
</wx-carousel>

<script>
export default {
  data() {
    return {
      c1: 1
    };
  },
  methods: {
    handleClick() {
      this.$toast("got!");
    }
  }
};
</script>

# 切换事件

<wx-divider>change事件: 索引-{{c2}}</wx-divider>
<wx-carousel height="150px" @change="handleChange">
  <wx-carousel-item v-for="i in 4" :key="i">
    <h3>{{i}}</h3>
  </wx-carousel-item>
</wx-carousel>

<script>
export default {
  data() {
    return {
      c2: 0
    };
  },
  methods: {
    handleChange(index) {
      this.c2 = index;
    }
  }
};
</script>

# 纵向滚动/无指示器

<wx-carousel height="40px" direction="vertical" :indicator="false">
  <wx-carousel-item v-for="(title, index) in data" :key="index">
    <span>{{title}}</span>
  </wx-carousel-item>
</wx-carousel>

<script>
export default {
  data() {
    return {
      data: [
        "遵循weui的视觉设计规范,简洁美观",
        "丰富的组件和API,适用各种应用场景",
        "组件简单易用,并保持灵活度和规范性",
        "支持主题定制,满足个性化需求",
        "提供整套的移动应用开发框架,降低开发成本"
      ]
    };
  }
};
</script>
参数 说明 类型 可选值 默认值
v-model/value 绑定值,即索引值 Number - 0
autoplay 是否自动切换 Boolean - true
loop 是否循环展示 Boolean - true
interval 自动切换的时间间隔,单位为毫秒 Number - 3000
height 走马灯的高度 String - auto
aspectRatio 走马灯容器的宽度与高度比例 Number 0~1 -
direction 走马灯的切换方向 String horizontal/vertical horizontal
indicator 是否显示指示器 Boolean - true
事件名称 说明 回调参数
change 走马灯切换时触发 index: 索引值
参数 说明 类型 可选值 默认值
img 图片地址或图片base64 String - -
title 幻灯片标题,空值即不显示 String - -
事件名称 说明 回调参数
* 自定义绑定事件,支持所有类型事件 event: Event
插槽名称 说明
default 幻灯片主体内容
title 幻灯片标题内容
back
走马灯