返回顶部
首页 > 资讯 > 前端开发 > JavaScript >uniapp五分钟实现刷抖音小程序教程示例
  • 933
分享到

uniapp五分钟实现刷抖音小程序教程示例

uniapp刷抖音小程序uniapp小程序 2023-03-19 17:03:42 933人浏览 八月长安
摘要

目录前言演示一下看看去掉小程序顶部栏滚动小视频组件数据样式事件代码片段写完了就得总结一下前言 最近闲来无事,在自己的小程序里面集成了一个小视频的接口,但是由于小程序对于播放视频的限

前言

最近闲来无事,在自己的小程序里面集成了一个小视频的接口,但是由于小程序对于播放视频的限制,只能用来做一个demo刷视频了,没办法上线体验。

小程序播放视频限制最多10个,超出可能就崩了。

我也有想过用js去追加和删减,但是还是有点麻烦了,等有空了再把想法化为现实吧。

演示一下看看

去掉小程序顶部栏

  • 为了让小视频刷起来更有感觉,肯定是需要弄个全屏才行的。
  • 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 style="height: 100vh;width: 100vw;"></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是可以直接编译成 H5 的,所以我们就直接在掘金代码片段中看一下效果吧。

代码片段

代码片段里面的内容是直接引用的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五分钟实现刷抖音小程序教程示例的详细内容,更多关于uniapp刷抖音小程序的资料请关注编程网其它相关文章!

--结束END--

本文标题: uniapp五分钟实现刷抖音小程序教程示例

本文链接: https://lsjlt.com/news/200265.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • uniapp五分钟实现刷抖音小程序教程示例
    目录前言演示一下看看去掉小程序顶部栏滚动小视频组件数据样式事件代码片段写完了就得总结一下前言 最近闲来无事,在自己的小程序里面集成了一个小视频的接口,但是由于小程序对于播放视频的限...
    99+
    2023-03-19
    uniapp刷抖音小程序 uniapp 小程序
  • uniapp如何实现刷抖音小程序
    本篇内容介绍了“uniapp如何实现刷抖音小程序”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!去掉小程序顶部栏为了让小视频刷起来更有感觉,肯...
    99+
    2023-07-05
  • uniapp实现微信小程序全局分享的示例代码
    目录创建全局分享内容文件引入并全局注册该文件自定义页面分享内容 uniapp 实现微信小程序的全局转发给好友/分享到朋友圈的功能。主要使用 Vue.js 的 全局混入 概念。 下面直...
    99+
    2024-04-02
  • uniapp小程序订阅消息推送+Thinkphp5后端代码教程示例
    记录一下通过uniapp开发小程序消息推送的实例,配合后端tp推送,之前写的项目是微信小程序而且后端是原生php,这次通过项目记录一下 目录 回顾access_token获取规则以及思路 第一步:设计前端触发订阅事件第二步:设...
    99+
    2023-08-16
    uni-app 小程序 数学建模 Thinkphp
  • uniapp 实现微信小程序全局分享的示例代码怎么编写
    这期内容当中小编将会给大家带来有关uniapp 实现微信小程序全局分享的示例代码怎么编写,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。uniapp 实现微信小程序的全局转发给好友/分享到朋友圈的...
    99+
    2023-06-22
  • 微信小程序中基础教程的示例分析
    这篇文章将为大家详细讲解有关微信小程序中基础教程的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。开发准备工作获取微信小程序的 AppID登录 https://mp...
    99+
    2024-04-02
  • JavaScript实现微信小程序打卡时钟项目实例
    目录一、项目展示二、首页三、设置文末:项目代码一、项目展示 这是一款简单实用的小时钟工具 分为工作和休息两种状态 用户可以设置相应的时间 所有的时钟记录都会被保存下来 二、首页 首...
    99+
    2024-04-02
  • Android实现的截屏小程序示例
    本文实例讲述了Android实现的截屏小程序。分享给大家供大家参考,具体如下: 先看截图,不过这个截屏还不够完整,头上的statusbar没有,呈黑色。 多按了几次,就成这样...
    99+
    2022-06-06
    小程序 程序 示例 Android
  • 微信小程序五星评分效果怎么实现
    这篇文章主要介绍微信小程序五星评分效果怎么实现,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!微信小程序五星评分效果实现代码很多做过电商项目的朋友会经常用到评分的功能,我这里正好写了一...
    99+
    2024-04-02
  • 微信小程序怎么实现五星评分功能
    这篇文章主要介绍了微信小程序怎么实现五星评分功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。五星级评分效果:<view> &n...
    99+
    2024-04-02
  • 微信小程序中scroll-view实现上拉加载与下拉刷新的示例分析
    这篇文章主要为大家展示了“微信小程序中scroll-view实现上拉加载与下拉刷新的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“微信小程序中scrol...
    99+
    2024-04-02
  • 微信小程序底层实现原理的示例分析
    这篇文章给大家分享的是有关微信小程序底层实现原理的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。  根据小程序开发文档-框架(https://mp.weixin.qq.com/debug/wxadoc/d...
    99+
    2023-06-26
  • uniapp实现下拉刷新及上拉(分页)加载更多(app,H5,小程序均可使用)
      开门见山地说,在移动端开发中,80%的项目都会涉及到列表展示,而有了列表不可避免的需求就是列表的下拉刷新和上拉加载更多。本篇文章主要介绍在使用uniapp开发移动端的过程中,比较好用的一个下拉及上拉组件,节约大家选择组件的时间,其完美适...
    99+
    2023-08-18
    小程序 uni-app 前端
  • 微信小程序实现触底加载与下拉刷新的示例代码
    目录触底加载loader函数思考loader函数实现触底加载动画触底加载的优点下拉刷新最后在最近做小程序的时候有这么一个很常见的需求,加载一个信息列表,要求需要触底加载和下拉刷新,我...
    99+
    2024-04-02
  • uniapp小程序使用高德地图api实现路线规划的示例代码
    目录路线规划简介本例是驾车路线规划功能和位置选择地图api:chooseLocation2.完整源码组件路线规划 简介 路线规划常用于出行路线的提前预览,我们提供4种类型的路线规划,...
    99+
    2023-01-10
    uniapp高德地图路线规划 uniapp小程序使用高德地图 uniapp高德地图
  • uniapp实现小程序页面转发和分享到朋友圈
    借助uniapp中页面生命周期钩子onShareAppMessage(OBJECT)用户点击右上角分享 在 js 中定义 onShareAppMessage 处理函数(和 onLoad 等生命周期函数...
    99+
    2023-09-25
    小程序 uni-app 微信小程序
  • 微信小程序实现登录界面示例
    本文实例为大家分享了微信小程序实现登录界面的具体代码,供大家参考,具体内容如下 注:这里使用的是原生微信小程序 使用wxss和wxml index.wxml文件中代码 <vie...
    99+
    2024-04-02
  • 微信小程序骨架屏的实现示例
    目录什么是骨架屏 小程序中骨架屏的生成方式 引入方法 显示与隐藏 为了优化用户体验,骨架屏一直是开发者比较喜欢的表现方式,也就是首屏占位的一种表现方式,不会让浏览者因为长时间的等待而...
    99+
    2024-04-02
  • 微信小程序开发实践的示例分析
    这篇文章主要介绍了微信小程序开发实践的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。小程序由于微信提供了一些组件,在微信中的一些体验确实不错,对于开发来说,由数据驱动...
    99+
    2023-06-26
  • 微信小程序中下拉刷新及上拉加载的示例分析
    小编给大家分享一下微信小程序中下拉刷新及上拉加载的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.下拉刷新的概念及应用...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作