From ccee429d379e0108b7445f72ade8d97c110a6fb3 Mon Sep 17 00:00:00 2001 From: ZZJ <zzjdsg2300@163.com> Date: 星期二, 09 十一月 2021 18:01:59 +0800 Subject: [PATCH] 问题修复 --- src/pages/panoramicView/components/SlideCanvas.vue | 71 ++++++++++++++++++++--------------- 1 files changed, 40 insertions(+), 31 deletions(-) diff --git a/src/pages/panoramicView/components/SlideCanvas.vue b/src/pages/panoramicView/components/SlideCanvas.vue index 14362f4..02bfbcb 100644 --- a/src/pages/panoramicView/components/SlideCanvas.vue +++ b/src/pages/panoramicView/components/SlideCanvas.vue @@ -9,15 +9,17 @@ > <swiper-slide v-for="camera in cameras" :key="camera.id+'c'"> <div class="swiper-draw-box-title"> + <div class="left-fixed"> + <b style="margin-left:14px;">缁樺埗鍖哄煙</b> + <span + class="el-dropdown-link" + @click="drawBaseImg(camera.id)" + style="position: relative;top: 5px; cursor:pointer" + > + <i class="iconfont iconbianji1" style="font-size: 28px; "></i> + </span> + </div> <b>{{camera.name}}</b> - <b style="margin-left:14px;">缁樺埗鍖哄煙</b> - <span - class="el-dropdown-link" - @click="drawBaseImg(camera.id)" - style="position: relative;top: 5px; cursor:pointer" - > - <i class="iconfont iconbianji1" style="font-size: 28px; "></i> - </span> </div> <polygon-canvas class="polygon-canvas" @@ -32,17 +34,16 @@ ></polygon-canvas> </swiper-slide> </swiper> - <div class="swiper-pre-border" slot="button-prev" @click="pre" > - <div class="icon-btn" > + <div class="swiper-pre-border" slot="button-prev" @click="pre"> + <div class="icon-btn"> <i class="iconfont iconzuo"></i> </div> </div> <div class="swiper-next-border" slot="button-next" @click="next"> - <div class="icon-btn" > + <div class="icon-btn"> <i class="iconfont iconyou1"></i> </div> </div> - </div> </template> @@ -56,37 +57,33 @@ 'cameras', //'swiperOption' ], - watch:{ - cameras:{ - handler(n,o){ - console.log('slidecanvas cameras',n) + watch: { + cameras: { + handler(n, o) { + console.log('slidecanvas cameras', n) }, deep: true } }, components: { PolygonCanvas }, - data () { + data() { return { swiperOption: this.newOption(), //mySwiper: {} } }, computed: { - swiper () { + swiper() { return this.$refs['cameraSwiper'].swiper } }, - mounted () { + mounted() { //this.mySwiper = this.$refs.sceneSwiper.swiper; - console.log(this.swiper) + // console.log(this.swiper) }, methods: { - refresh(url,cameraId) { + refresh(url, cameraId) { this.$emit('polygonDataUpdate') - - //let camera = this.cameras.find(one => one.id == cameraId); - //camera.canvasData.snapshot_url = url; - }, getCanvasData(data) { let _this = this; @@ -94,7 +91,7 @@ _this.$emit('polygonDataUpdate') }); }, - newOption () { + newOption() { return { slidesPerView: 1, spaceBetween: 0, @@ -107,15 +104,21 @@ } }, - pre () { - this.swiper.activeIndex-- + pre() { + this.swiper.activeIndex--; + if (this.swiper.activeIndex == -1) { + this.swiper.activeIndex = this.cameras.length - 1; + } this.swiper.slideTo(this.swiper.activeIndex); }, - next () { - this.swiper.activeIndex++ + next() { + this.swiper.activeIndex++; + if (this.swiper.activeIndex == this.cameras.length) { + this.swiper.activeIndex = 0; + } this.swiper.slideTo(this.swiper.activeIndex); }, - drawBaseImg (id) { + drawBaseImg(id) { this.$refs[`polygonCanvas_${id}`][0].showModal(); } } @@ -170,6 +173,7 @@ background: #666; } .swiper-draw-box-title { + position: relative; display: flex; justify-content: center; align-items: center; @@ -177,6 +181,11 @@ b { font-size: 14px; } + .left-fixed { + position: absolute; + left: 0; + top: -6px; + } } .wrap-box { width: 100%; -- Gitblit v1.8.0