index.vue 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <template>
  2. <view class="demo-swiper">
  3. <demo-block title="基础用法-数据截断">
  4. <z-swiper ref="zSwiper" v-model="list" :options="options">
  5. <z-swiper-item v-for="(item,index) in list" :key="index">
  6. <demo-item :item="item"></demo-item>
  7. </z-swiper-item>
  8. </z-swiper>
  9. </demo-block>
  10. <demo-block title="基础用法-保留结构">
  11. <z-swiper ref="zSwiper" v-model="listKeep" :options="optionsKeep">
  12. <z-swiper-item v-for="(item,index) in listKeep" :key="index">
  13. <demo-item :item="item"></demo-item>
  14. </z-swiper-item>
  15. </z-swiper>
  16. </demo-block>
  17. </view>
  18. </template>
  19. <script>
  20. export default {
  21. data() {
  22. return {
  23. options: {
  24. virtual: {
  25. type: 'cut',
  26. addSlidesBefore: 1,
  27. addSlidesAfter: 1,
  28. slides: []
  29. },
  30. },
  31. optionsKeep: {
  32. virtual: {
  33. type: 'keep',
  34. addSlidesBefore: 1,
  35. addSlidesAfter: 1,
  36. slides: []
  37. },
  38. },
  39. list: [],
  40. listKeep: [],
  41. preList: [],
  42. colorList: ['#7ED321', '#2183D3', '#2128D3', '#431058', '#1E835A', '#B1397B', '#B36021']
  43. }
  44. },
  45. mounted() {
  46. let list = [];
  47. for (var i = 1; i < 1000; i += 1) {
  48. const randomValue = Math.floor(Math.random() * 7);
  49. list.push({
  50. background: this.colorList[randomValue],
  51. text: `slide${i}`
  52. })
  53. }
  54. this.preList = [...list];
  55. this.options.virtual.slides = [...list];
  56. this.optionsKeep.virtual.slides = [...list];
  57. }
  58. }
  59. </script>