From c3125a87fc82a8e18e37e542ab54bced1cce773f Mon Sep 17 00:00:00 2001 From: duqingquan Date: Mon, 25 Sep 2023 19:34:40 +0800 Subject: [PATCH] =?UTF-8?q?swiper=20=E8=87=AA=E5=8A=A8=E5=8C=96=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E7=A4=BA=E4=BE=8B=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/component/swiper/swiper.test.js | 70 +++++++++++++++++++++++++++ pages/component/swiper/swiper.uvue | 13 ++--- 2 files changed, 77 insertions(+), 6 deletions(-) create mode 100644 pages/component/swiper/swiper.test.js diff --git a/pages/component/swiper/swiper.test.js b/pages/component/swiper/swiper.test.js new file mode 100644 index 00000000..f3d111f1 --- /dev/null +++ b/pages/component/swiper/swiper.test.js @@ -0,0 +1,70 @@ +function getData(key = '') { + return new Promise(async (resolve, reject) => { + const data = await page.data() + resolve(key ? data[key] : data) + }) +} + +let page; +beforeAll(async () => { + page = await program.reLaunch('/pages/component/swiper/swiper') + await page.waitFor(600) +}) + + +describe('test swiper', () => { + + + it('check indicator show', async () => { + await page.setData({ + dotsSelect: true, + }) + await page.waitFor(600) + await page.setData({ + dotsSelect: false, + }) + await page.waitFor(600) + /** + * todo 暂无判断条件 + */ + }); + + it('check autoplay loop', async () => { + await page.setData({ + autoplaySelect: true, + }) + await page.waitFor(600) + expect(await getData('currentValChange')).toEqual(0) + await page.waitFor(2000) + expect(await getData('currentValChange')).toEqual(1) + await page.waitFor(5000) + expect(await getData('currentValChange')).toEqual(2) + + await page.setData({ + circularSelect: true + }) + expect(await getData('currentValChange')).toEqual(2) + await page.waitFor(1000) + expect(await getData('currentValChange')).toEqual(0) + await page.setData({ + circularSelect: false, + autoplaySelect: false + }) + }); + + + it('check loop index', async () => { + await page.setData({ + currentVal: 2, + }) + await page.waitFor(1600) + expect(await getData('currentValChange')).toEqual(2) + await page.setData({ + currentVal: 0, + }) + await page.waitFor(1600) + expect(await getData('currentValChange')).toEqual(0) + }); + +}); + diff --git a/pages/component/swiper/swiper.uvue b/pages/component/swiper/swiper.uvue index 12adcd98..ea75b56f 100644 --- a/pages/component/swiper/swiper.uvue +++ b/pages/component/swiper/swiper.uvue @@ -86,7 +86,6 @@ data() { return { background: ['color1', 'color2', 'color3'], - interval: 2000, dotsSelect: false, reboundSelect:false, autoplaySelect: false, @@ -95,7 +94,7 @@ verticalSelect: false, currentSelect: false, currentItemIdSelect: false, - intervalSelect: 1000, + intervalSelect: 2000, indicatorColor: "", indicatorColorActive: "", currentVal: 0, @@ -103,12 +102,14 @@ disableTouchSelect: false, swiperTransitionSelect: false, swiperAnimationfinishSelect: false, - swiperChangeSelect: false + swiperChangeSelect: false, + currentValChange:0 } - }, - methods: { + }, - swiperChange: function (e : SwiperChangeEvent) { + methods: { + swiperChange: function (e : SwiperChangeEvent) { + this.currentValChange = e.detail.current if (this.swiperChangeSelect) { console.log("swiperChange") console.log(e) -- GitLab