您好,登錄后才能下訂單哦!
本篇內容介紹了“uniapp如何實現刷抖音小程序”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
為了讓小視頻刷起來更有感覺,肯定是需要弄個全屏才行的。
在 uniapp
項目里面的 pages.json
文件中修改當前頁面路徑的 navigationStyle
{ "path": "pages/searchvideo/searchvideo", "style": { "navigationBarTitleText": "小視頻", "enablePullDownRefresh": false, "navigationStyle": "custom" } }
頂部欄可以根據自己的需求自定義,我這里放了一個類似于抖音的 tab欄
。
在uniapp
和原生的微信小程序
里面都有 swiper
標簽用于做滾動或輪播效果的組件,所以我們可以直接利用這個組件做出我們想要的效果。
<swiper class="card-swiper" :circular="true" vertical="true" :autoplay="true" duration="500" interval="5000" @change="cardSwiper"> <swiper-item v-for="(item,index) in swiperList" :key="index" :class="cardCur==index?'cur':''"> <view class="swiper-item image-banner"> <video :id="`video-${item.id}`" :src="item.mp4" loop ></video> </view> </swiper-item> </swiper>
通過設置 autoplay
元素,可以讓頁面打開時,不會自動播放視頻。
如果需要設置自動播放視頻,需要動態配置 duration
的值,需要等于當前視頻的播放時長。
循環 swiperList
的數據,方便我們操作當前視頻。
cardCur: 0, swiperList: [{ id: 0, mp4: 'http://vcdnb.huoying666.com/new_video/2022/0725/b94a235358c31668dc99e7cff9fe5e9c/v1080/b94a235351_6921661_fhd.mp4' }, { id: 1, mp4: 'http://vcdnb.huoying666.com/new_video/2020/1211/9d0b01c88bd05721f9de88122de72db1/v1080/9d0b01c881_5872976_fhd.mp4' }, { id: 2, mp4: 'http://vcdnb.huoying666.com/new_video/2021/1109/6f5610c304083ca59141c8f70aca6396/v720/6f5610c301_6578243_hd.mp4' }]
在 data
中定義 swiperList
數據內容,當然你也可以做成接口形式動態添加進去。
同時設置 cardCur
的默認值,用于配置視頻滾動下標。
.card-swiper { height: 100vh !important; } .card-swiper swiper-item { width: 750rpx !important; left: 0rpx; box-sizing: border-box; overflow: initial; } .card-swiper swiper-item .swiper-item { width: 100%; display: block; height: 100vh; border-radius: 0rpx; transform: scale(1); transition: all 0.2s ease-in 0s; overflow: hidden; } .card-swiper swiper-item.cur .swiper-item { transform: none; transition: all 0.2s ease-in 0s; } .card-swiper swiper-item .swiper-item-png { margin-top: -50vh; width: 100%; display: block; border-radius: 0rpx; transform: translate(1040rpx, 20rpx) scale(0.5, 0.5); transition: all 0.6s ease 0s; } .card-swiper swiper-item.cur .swiper-item-png { margin-top: -100vh; width: 900rpx; transform: translate(-80rpx, 0rpx) scale(1, 1); transition: all 0.6s ease 0s; } .image-banner { display: flex; align-items: center; justify-content: center; } .image-banner image { width: 100%; }
cardSwiper(e) { this.cardCur = e.detail.current for (let i = 0; i < this.swiperList.length; i++) { const videoContext = uni.createVideoContext(`video-${this.swiperList[i]['id']}`, this) if (i === this.cardCur) { videoContext.play() } else { videoContext.stop() } } }
在 methods
中定義 swiper
改變時的方法,用于控制視頻的暫停和播放。
代碼片段里面的內容是直接引用的uniapp云發布的鏈接,如果想了解這一塊的內容,可以單獨開篇文章寫一下的。
<div id="app"> <iframe src="https://static-54d8ac48-ba3d-4f0d-8a0b-029cbc34a4b3.bspapp.com/#/" width="400" height="800"></iframe> </div>
{"success":false,"error":{"code":"InvalidSpace.Deleted","message":"The space is already deleted."},"data":null}
“uniapp如何實現刷抖音小程序”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。