You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
19 KiB
1 line
19 KiB
{"remainingRequest":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/thread-loader/dist/cjs.js!/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/babel-loader/lib/index.js!/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/cache-loader/dist/cjs.js??ref--0-0!/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/src/components/common/swiper/Swiper.vue?vue&type=script&lang=js&","dependencies":[{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/src/components/common/swiper/Swiper.vue","mtime":1618202277715},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/thread-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/babel-loader/lib/index.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMubnVtYmVyLmNvbnN0cnVjdG9yIjsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KZXhwb3J0IGRlZmF1bHQgewogIG5hbWU6ICJTd2lwZXIiLAogIHByb3BzOiB7CiAgICBpbnRlcnZhbDogewogICAgICB0eXBlOiBOdW1iZXIsCiAgICAgIGRlZmF1bHQ6IDMwMDAKICAgIH0sCiAgICBhbmltRHVyYXRpb246IHsKICAgICAgdHlwZTogTnVtYmVyLAogICAgICBkZWZhdWx0OiAzMDAKICAgIH0sCiAgICBtb3ZlUmF0aW86IHsKICAgICAgdHlwZTogTnVtYmVyLAogICAgICBkZWZhdWx0OiAwLjIKICAgIH0sCiAgICBzaG93SW5kaWNhdG9yOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IHRydWUKICAgIH0KICB9LAogIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7CiAgICByZXR1cm4gewogICAgICBzbGlkZUNvdW50OiAwLAogICAgICAvLyDlhYPntKDkuKrmlbAKICAgICAgdG90YWxXaWR0aDogMCwKICAgICAgLy8gc3dpcGVy55qE5a695bqmCiAgICAgIHN3aXBlclN0eWxlOiB7fSwKICAgICAgLy8gc3dpcGVy5qC35byPCiAgICAgIGN1cnJlbnRJbmRleDogMSwKICAgICAgLy8g5b2T5YmN55qEaW5kZXgKICAgICAgc2Nyb2xsaW5nOiBmYWxzZSAvLyDmmK/lkKbmraPlnKjmu5rliqgKCiAgICB9OwogIH0sCiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHsKICAgIHZhciBfdGhpcyA9IHRoaXM7CgogICAgLy8gMS7mk43kvZxET00sIOWcqOWJjeWQjua3u+WKoFNsaWRlCiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKICAgICAgX3RoaXMuaGFuZGxlRG9tKCk7IC8vIDIu5byA5ZCv5a6a5pe25ZmoCgoKICAgICAgX3RoaXMuc3RhcnRUaW1lcigpOwogICAgfSwgNTAwKTsKICB9LAogIG1ldGhvZHM6IHsKICAgIC8qKgogICAgICAgKiDlrprml7blmajmk43kvZwKICAgICAgICovCiAgICBzdGFydFRpbWVyOiBmdW5jdGlvbiBzdGFydFRpbWVyKCkgewogICAgICB2YXIgX3RoaXMyID0gdGhpczsKCiAgICAgIHRoaXMucGxheVRpbWVyID0gd2luZG93LnNldEludGVydmFsKGZ1bmN0aW9uICgpIHsKICAgICAgICBfdGhpczIuY3VycmVudEluZGV4Kys7CgogICAgICAgIF90aGlzMi5zY3JvbGxDb250ZW50KC1fdGhpczIuY3VycmVudEluZGV4ICogX3RoaXMyLnRvdGFsV2lkdGgpOwogICAgICB9LCB0aGlzLmludGVydmFsKTsKICAgIH0sCiAgICBzdG9wVGltZXI6IGZ1bmN0aW9uIHN0b3BUaW1lcigpIHsKICAgICAgd2luZG93LmNsZWFySW50ZXJ2YWwodGhpcy5wbGF5VGltZXIpOwogICAgfSwKCiAgICAvKioKICAgICAqIOa7muWKqOWIsOato+ehrueahOS9jee9rgogICAgICovCiAgICBzY3JvbGxDb250ZW50OiBmdW5jdGlvbiBzY3JvbGxDb250ZW50KGN1cnJlbnRQb3NpdGlvbikgewogICAgICAvLyAwLuiuvue9ruato+WcqOa7muWKqAogICAgICB0aGlzLnNjcm9sbGluZyA9IHRydWU7IC8vIDEu5byA5aeL5rua5Yqo5Yqo55S7CgogICAgICB0aGlzLnN3aXBlclN0eWxlLnRyYW5zaXRpb24gPSAndHJhbnNmb3JtICcgKyB0aGlzLmFuaW1EdXJhdGlvbiArICdtcyc7CiAgICAgIHRoaXMuc2V0VHJhbnNmb3JtKGN1cnJlbnRQb3NpdGlvbik7IC8vIDIu5Yik5pat5rua5Yqo5Yiw55qE5L2N572uCgogICAgICB0aGlzLmNoZWNrUG9zaXRpb24oKTsgLy8gNC7mu5rliqjlrozmiJAKCiAgICAgIHRoaXMuc2Nyb2xsaW5nID0gZmFsc2U7CiAgICB9LAoKICAgIC8qKgogICAgICog5qCh6aqM5q2j56Gu55qE5L2N572uCiAgICAgKi8KICAgIGNoZWNrUG9zaXRpb246IGZ1bmN0aW9uIGNoZWNrUG9zaXRpb24oKSB7CiAgICAgIHZhciBfdGhpczMgPSB0aGlzOwoKICAgICAgd2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewogICAgICAgIC8vIDEu5qCh6aqM5q2j56Gu55qE5L2N572uCiAgICAgICAgX3RoaXMzLnN3aXBlclN0eWxlLnRyYW5zaXRpb24gPSAnMG1zJzsKCiAgICAgICAgaWYgKF90aGlzMy5jdXJyZW50SW5kZXggPj0gX3RoaXMzLnNsaWRlQ291bnQgKyAxKSB7CiAgICAgICAgICBfdGhpczMuY3VycmVudEluZGV4ID0gMTsKCiAgICAgICAgICBfdGhpczMuc2V0VHJhbnNmb3JtKC1fdGhpczMuY3VycmVudEluZGV4ICogX3RoaXMzLnRvdGFsV2lkdGgpOwogICAgICAgIH0gZWxzZSBpZiAoX3RoaXMzLmN1cnJlbnRJbmRleCA8PSAwKSB7CiAgICAgICAgICBfdGhpczMuY3VycmVudEluZGV4ID0gX3RoaXMzLnNsaWRlQ291bnQ7CgogICAgICAgICAgX3RoaXMzLnNldFRyYW5zZm9ybSgtX3RoaXMzLmN1cnJlbnRJbmRleCAqIF90aGlzMy50b3RhbFdpZHRoKTsKICAgICAgICB9IC8vIDIu57uT5p2f56e75Yqo5ZCO55qE5Zue6LCDCgoKICAgICAgICBfdGhpczMuJGVtaXQoJ3RyYW5zaXRpb25FbmQnLCBfdGhpczMuY3VycmVudEluZGV4IC0gMSk7CiAgICAgIH0sIHRoaXMuYW5pbUR1cmF0aW9uKTsKICAgIH0sCgogICAgLyoqCiAgICAgKiDorr7nva7mu5rliqjnmoTkvY3nva4KICAgICAqLwogICAgc2V0VHJhbnNmb3JtOiBmdW5jdGlvbiBzZXRUcmFuc2Zvcm0ocG9zaXRpb24pIHsKICAgICAgdGhpcy5zd2lwZXJTdHlsZS50cmFuc2Zvcm0gPSAidHJhbnNsYXRlM2QoIi5jb25jYXQocG9zaXRpb24sICJweCwgMCwgMCkiKTsKICAgICAgdGhpcy5zd2lwZXJTdHlsZVsnLXdlYmtpdC10cmFuc2Zvcm0nXSA9ICJ0cmFuc2xhdGUzZCgiLmNvbmNhdChwb3NpdGlvbiwgInB4KSwgMCwgMCIpOwogICAgICB0aGlzLnN3aXBlclN0eWxlWyctbXMtdHJhbnNmb3JtJ10gPSAidHJhbnNsYXRlM2QoIi5jb25jYXQocG9zaXRpb24sICJweCksIDAsIDAiKTsKICAgIH0sCgogICAgLyoqCiAgICAgKiDmk43kvZxET00sIOWcqERPTeWJjeWQjua3u+WKoFNsaWRlCiAgICAgKi8KICAgIGhhbmRsZURvbTogZnVuY3Rpb24gaGFuZGxlRG9tKCkgewogICAgICAvLyAxLuiOt+WPluimgeaTjeS9nOeahOWFg+e0oAogICAgICB2YXIgc3dpcGVyRWwgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc3dpcGVyJyk7CiAgICAgIHZhciBzbGlkZXNFbHMgPSBzd2lwZXJFbCAmJiBzd2lwZXJFbC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdzbGlkZScpOyAvLyAyLuS/neWtmOS4quaVsAoKICAgICAgdGhpcy5zbGlkZUNvdW50ID0gc2xpZGVzRWxzICYmIHNsaWRlc0Vscy5sZW5ndGg7IC8vIDMu5aaC5p6c5aSn5LqOMeS4qiwg6YKj5LmI5Zyo5YmN5ZCO5YiG5Yir5re75Yqg5LiA5Liqc2xpZGUKCiAgICAgIGlmICh0aGlzLnNsaWRlQ291bnQgPiAxKSB7CiAgICAgICAgdmFyIGNsb25lRmlyc3QgPSBzbGlkZXNFbHNbMF0uY2xvbmVOb2RlKHRydWUpOwogICAgICAgIHZhciBjbG9uZUxhc3QgPSBzbGlkZXNFbHNbdGhpcy5zbGlkZUNvdW50IC0gMV0uY2xvbmVOb2RlKHRydWUpOwogICAgICAgIHN3aXBlckVsLmluc2VydEJlZm9yZShjbG9uZUxhc3QsIHNsaWRlc0Vsc1swXSk7CiAgICAgICAgc3dpcGVyRWwuYXBwZW5kQ2hpbGQoY2xvbmVGaXJzdCk7CiAgICAgICAgdGhpcy50b3RhbFdpZHRoID0gc3dpcGVyRWwub2Zmc2V0V2lkdGg7CiAgICAgICAgdGhpcy5zd2lwZXJTdHlsZSA9IHN3aXBlckVsLnN0eWxlOwogICAgICB9IC8vIDQu6K6pc3dpcGVy5YWD57SgLCDmmL7npLrnrKzkuIDkuKoo55uu5YmN5piv5pi+56S65YmN6Z2i5re75Yqg55qE5pyA5ZCO5LiA5Liq5YWD57SgKQoKCiAgICAgIHRoaXMuc2V0VHJhbnNmb3JtKC10aGlzLnRvdGFsV2lkdGgpOwogICAgfSwKCiAgICAvKioKICAgICAqIOaLluWKqOS6i+S7tueahOWkhOeQhgogICAgICovCiAgICB0b3VjaFN0YXJ0OiBmdW5jdGlvbiB0b3VjaFN0YXJ0KGUpIHsKICAgICAgLy8gMS7lpoLmnpzmraPlnKjmu5rliqgsIOS4jeWPr+S7peaLluWKqAogICAgICBpZiAodGhpcy5zY3JvbGxpbmcpIHJldHVybjsgLy8gMi7lgZzmraLlrprml7blmagKCiAgICAgIHRoaXMuc3RvcFRpbWVyKCk7IC8vIDMu5L+d5a2Y5byA5aeL5rua5Yqo55qE5L2N572uCgogICAgICB0aGlzLnN0YXJ0WCA9IGUudG91Y2hlc1swXS5wYWdlWDsKICAgIH0sCiAgICB0b3VjaE1vdmU6IGZ1bmN0aW9uIHRvdWNoTW92ZShlKSB7CiAgICAgIC8vIDEu6K6h566X5Ye655So5oi35ouW5Yqo55qE6Led56a7CiAgICAgIHRoaXMuY3VycmVudFggPSBlLnRvdWNoZXNbMF0ucGFnZVg7CiAgICAgIHRoaXMuZGlzdGFuY2UgPSB0aGlzLmN1cnJlbnRYIC0gdGhpcy5zdGFydFg7CiAgICAgIHZhciBjdXJyZW50UG9zaXRpb24gPSAtdGhpcy5jdXJyZW50SW5kZXggKiB0aGlzLnRvdGFsV2lkdGg7CiAgICAgIHZhciBtb3ZlRGlzdGFuY2UgPSB0aGlzLmRpc3RhbmNlICsgY3VycmVudFBvc2l0aW9uOyAvLyAyLuiuvue9ruW9k+WJjeeahOS9jee9rgoKICAgICAgdGhpcy5zZXRUcmFuc2Zvcm0obW92ZURpc3RhbmNlKTsKICAgIH0sCiAgICB0b3VjaEVuZDogZnVuY3Rpb24gdG91Y2hFbmQoZSkgewogICAgICAvLyAxLuiOt+WPluenu+WKqOeahOi3neemuwogICAgICB2YXIgY3VycmVudE1vdmUgPSBNYXRoLmFicyh0aGlzLmRpc3RhbmNlKTsgLy8gMi7liKTmlq3mnIDnu4jnmoTot53nprsKCiAgICAgIGlmICh0aGlzLmRpc3RhbmNlID09PSAwKSB7CiAgICAgICAgcmV0dXJuOwogICAgICB9IGVsc2UgaWYgKHRoaXMuZGlzdGFuY2UgPiAwICYmIGN1cnJlbnRNb3ZlID4gdGhpcy50b3RhbFdpZHRoICogdGhpcy5tb3ZlUmF0aW8pIHsKICAgICAgICAvLyDlj7Povrnnp7vliqjotoXov4cwLjUKICAgICAgICB0aGlzLmN1cnJlbnRJbmRleC0tOwogICAgICB9IGVsc2UgaWYgKHRoaXMuZGlzdGFuY2UgPCAwICYmIGN1cnJlbnRNb3ZlID4gdGhpcy50b3RhbFdpZHRoICogdGhpcy5tb3ZlUmF0aW8pIHsKICAgICAgICAvLyDlkJHlt6bnp7vliqjotoXov4cwLjUKICAgICAgICB0aGlzLmN1cnJlbnRJbmRleCsrOwogICAgICB9IC8vIDMu56e75Yqo5Yiw5q2j56Gu55qE5L2N572uCgoKICAgICAgdGhpcy5zY3JvbGxDb250ZW50KC10aGlzLmN1cnJlbnRJbmRleCAqIHRoaXMudG90YWxXaWR0aCk7IC8vIDQu56e75Yqo5a6M5oiQ5ZCO6YeN5paw5byA5ZCv5a6a5pe25ZmoCgogICAgICB0aGlzLnN0YXJ0VGltZXIoKTsKICAgIH0sCgogICAgLyoqCiAgICAgKiDmjqfliLbkuIrkuIDkuKosIOS4i+S4gOS4qgogICAgICovCiAgICBwcmV2aW91czogZnVuY3Rpb24gcHJldmlvdXMoKSB7CiAgICAgIHRoaXMuY2hhbmdlSXRlbSgtMSk7CiAgICB9LAogICAgbmV4dDogZnVuY3Rpb24gbmV4dCgpIHsKICAgICAgdGhpcy5jaGFuZ2VJdGVtKDEpOwogICAgfSwKICAgIGNoYW5nZUl0ZW06IGZ1bmN0aW9uIGNoYW5nZUl0ZW0obnVtKSB7CiAgICAgIC8vIDEu56e76Zmk5a6a5pe25ZmoCiAgICAgIHRoaXMuc3RvcFRpbWVyKCk7IC8vIDIu5L+u5pS5aW5kZXjlkozkvY3nva4KCiAgICAgIHRoaXMuY3VycmVudEluZGV4ICs9IG51bTsKICAgICAgdGhpcy5zY3JvbGxDb250ZW50KC10aGlzLmN1cnJlbnRJbmRleCAqIHRoaXMudG90YWxXaWR0aCk7IC8vIDMu5re75Yqg5a6a5pe25ZmoCgogICAgICB0aGlzLnN0YXJ0VGltZXIoKTsKICAgIH0KICB9Cn07"},{"version":3,"sources":["Swiper.vue"],"names":[],"mappings":"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","sourcesContent":["<template>\n <div id=\"hy-swiper\">\n <div class=\"swiper\" @touchstart=\"touchStart\" @touchmove=\"touchMove\" @touchend=\"touchEnd\">\n <slot></slot>\n </div>\n <slot name=\"indicator\">\n </slot>\n <div class=\"indicator\">\n <slot name=\"indicator\" v-if=\"showIndicator && slideCount>1\">\n <div v-for=\"(item, index) in slideCount\" class=\"indi-item\" :class=\"{active: index === currentIndex-1}\" :key=\"index\"></div>\n </slot>\n </div>\n </div>\n</template>\n\n<script>\n\texport default {\n\t\tname: \"Swiper\",\n props: {\n interval: {\n\t\t type: Number,\n default: 3000\n },\n animDuration: {\n\t\t type: Number,\n default: 300\n },\n moveRatio: {\n type: Number,\n default: 0.2\n },\n showIndicator: {\n type: Boolean,\n default: true\n }\n },\n data: function () {\n\t\t return {\n slideCount: 0, // 元素个数\n totalWidth: 0, // swiper的宽度\n swiperStyle: {}, // swiper样式\n currentIndex: 1, // 当前的index\n scrolling: false, // 是否正在滚动\n }\n },\n mounted: function () {\n // 1.操作DOM, 在前后添加Slide\n setTimeout(() => {\n this.handleDom();\n // 2.开启定时器\n this.startTimer();\n }, 500)\n },\n methods: {\n\t\t /**\n * 定时器操作\n */\n startTimer: function () {\n\t\t this.playTimer = window.setInterval(() => {\n\t\t this.currentIndex++;\n\t\t this.scrollContent(-this.currentIndex * this.totalWidth);\n }, this.interval)\n },\n stopTimer: function () {\n window.clearInterval(this.playTimer);\n },\n\n /**\n * 滚动到正确的位置\n */\n scrollContent: function (currentPosition) {\n // 0.设置正在滚动\n this.scrolling = true;\n\n // 1.开始滚动动画\n this.swiperStyle.transition ='transform '+ this.animDuration + 'ms';\n this.setTransform(currentPosition);\n\n // 2.判断滚动到的位置\n this.checkPosition();\n\n // 4.滚动完成\n this.scrolling = false\n },\n\n /**\n * 校验正确的位置\n */\n checkPosition: function () {\n window.setTimeout(() => {\n // 1.校验正确的位置\n this.swiperStyle.transition = '0ms';\n if (this.currentIndex >= this.slideCount + 1) {\n this.currentIndex = 1;\n this.setTransform(-this.currentIndex * this.totalWidth);\n } else if (this.currentIndex <= 0) {\n this.currentIndex = this.slideCount;\n this.setTransform(-this.currentIndex * this.totalWidth);\n }\n\n // 2.结束移动后的回调\n this.$emit('transitionEnd', this.currentIndex-1);\n }, this.animDuration)\n },\n\n /**\n * 设置滚动的位置\n */\n setTransform: function (position) {\n this.swiperStyle.transform = `translate3d(${position}px, 0, 0)`;\n this.swiperStyle['-webkit-transform'] = `translate3d(${position}px), 0, 0`;\n this.swiperStyle['-ms-transform'] = `translate3d(${position}px), 0, 0`;\n },\n\n /**\n * 操作DOM, 在DOM前后添加Slide\n */\n\t\t handleDom: function () {\n // 1.获取要操作的元素\n let swiperEl = document.querySelector('.swiper');\n let slidesEls = swiperEl&&swiperEl.getElementsByClassName('slide');\n // 2.保存个数\n this.slideCount = slidesEls&&slidesEls.length;\n\n // 3.如果大于1个, 那么在前后分别添加一个slide\n if (this.slideCount > 1) {\n let cloneFirst = slidesEls[0].cloneNode(true);\n let cloneLast = slidesEls[this.slideCount - 1].cloneNode(true);\n swiperEl.insertBefore(cloneLast, slidesEls[0]);\n swiperEl.appendChild(cloneFirst);\n this.totalWidth = swiperEl.offsetWidth;\n this.swiperStyle = swiperEl.style;\n }\n\n // 4.让swiper元素, 显示第一个(目前是显示前面添加的最后一个元素)\n this.setTransform(-this.totalWidth);\n },\n\n /**\n * 拖动事件的处理\n */\n touchStart: function (e) {\n // 1.如果正在滚动, 不可以拖动\n if (this.scrolling) return;\n\n // 2.停止定时器\n this.stopTimer();\n\n // 3.保存开始滚动的位置\n this.startX = e.touches[0].pageX;\n },\n\n touchMove: function (e) {\n // 1.计算出用户拖动的距离\n this.currentX = e.touches[0].pageX;\n this.distance = this.currentX - this.startX;\n let currentPosition = -this.currentIndex * this.totalWidth;\n let moveDistance = this.distance + currentPosition;\n\n // 2.设置当前的位置\n this.setTransform(moveDistance);\n },\n\n touchEnd: function (e) {\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n // 1.获取移动的距离\n let currentMove = Math.abs(this.distance);\n\n // 2.判断最终的距离\n if (this.distance === 0) {\n return\n } else if (this.distance > 0 && currentMove > this.totalWidth * this.moveRatio) { // 右边移动超过0.5\n this.currentIndex--\n } else if (this.distance < 0 && currentMove > this.totalWidth * this.moveRatio) { // 向左移动超过0.5\n this.currentIndex++\n }\n\n // 3.移动到正确的位置\n this.scrollContent(-this.currentIndex * this.totalWidth);\n\n // 4.移动完成后重新开启定时器\n this.startTimer();\n },\n\n /**\n * 控制上一个, 下一个\n */\n previous: function () {\n this.changeItem(-1);\n },\n\n next: function () {\n this.changeItem(1);\n },\n\n changeItem: function (num) {\n // 1.移除定时器\n this.stopTimer();\n\n // 2.修改index和位置\n this.currentIndex += num;\n this.scrollContent(-this.currentIndex * this.totalWidth);\n\n // 3.添加定时器\n this.startTimer();\n }\n }\n\t}\n</script>\n\n<style scoped>\n #hy-swiper {\n overflow: hidden;\n position: relative;\n }\n\n .swiper {\n display: flex;\n }\n\n .indicator {\n display: flex;\n justify-content: center;\n position: absolute;\n width: 100%;\n bottom: 8px;\n }\n\n .indi-item {\n box-sizing: border-box;\n width: 4px;\n height: 4px;\n border-radius: 4px;\n background-color: #999;\n line-height: 8px;\n text-align: center;\n font-size: 12px;\n margin: 0 5px;\n }\n\n .indi-item.active {\n background-color: rgba(212,62,46,1.0);\n }\n</style>\n"],"sourceRoot":"src/components/common/swiper"}]} |