官方文档:https://zh.uniapp.dcloud.io/tutorial/miniprogram-subject.html

在 pages.json同级目录下 创建目录和文件:

wxcomponents:

my-video-play:

  index.js

  index.json

  index.wxml

  index.wxss

pages.json 全局引入:

index.js:

Component({
properties: {
videoUrl: String,
sectionId: String
},
methods: {
clickFun(event) {
this.triggerEvent('hideElement');
},
loadedmetadataFun(event) {
this.triggerEvent('loadedmetadataStart', event.detail.duration);
},
timeupdateFun(event) {
this.triggerEvent('videoTimeUpdate', event.detail);
},
endFun() {
this.triggerEvent('palyNextVideo', this.sectionId);
},
getVideoContext() {
return wx.createVideoContext("myVideo", this);
},
videoPlay() {
wx.createVideoContext("myVideo", this).play();
},
videoPause() {
wx.createVideoContext("myVideo", this).pause();
},
videoSeek(second) {
wx.createVideoContext("myVideo", this).seek(second);
}
}
})

index.wxml:

<video style="position: absolute; width: 100vw; height: 100vh;" id="myVideo"
direction="0"
src="{{videoUrl}}"
autoplay
controls="{{false}}"
show-center-play-btn="{{false}}"
show-play-btn="{{false}}"
show-fullscreen-btn="{{false}}"
enable-progress-gesture="{{false}}"
bindloadedmetadata="loadedmetadataFun"
bindtimeupdate="timeupdateFun"
bindended="endFun"
bindtap="clickFun"
>
</video>

index.json:

{
"component": true
}

index.wxss: 空文件

然后在uniapp vue文件中引入该组件:

<template>
<view>
...
<my-video-play style="position: absolute; width: 100vw; height: 100vh;" v-if="current === index && (item.videoUrl !== '')" ref='videoPlaySelf'
:videoUrl="item.videoUrl" :sectionId="item.sectionId"
@hideElement="hideElement" @loadedmetadataStart="loadedmetadataStart"
@videoTimeUpdate="videoTimeUpdate" @palyNextVideo="palyNextVideo">
</my-video-play>
...
</view>
</template>
<script lang="ts">
...
</script>
<style lang="scss" scoped>
...
</style>

uniapp引入微信小程序自定义视频组件--记录的更多相关文章

  1. 微信小程序自定义音频组件,自定义滚动条,单曲循环,循环播放

    小程序自定义音频组件,带滚动条 摘要:首先自定义音频组件,是因为产品有这样的需求,需要如下样式的 而微信小程序API给我们提供的就是这样的 而且产品需要小程序有后台播放功能,所以我们不考虑小程序的 a ...

  2. 微信小程序 自定义导航组件 nav头部 全面屏设计

    nav-dynamic 微信小程序自定义nav头部组件:适配全面屏设计: 实现功能 初始进入页面时,展示初始状态下的nav样式: 页面滚动时,监听页面滚动事件,展示滚动状态下的nav样式: 根据配置字 ...

  3. 微信小程序——自定义图标组件

    字体图标在网页中非常常见了.为了方便在小程序里面重复使用,自定义了一个图标组件,方便控制它的大小,颜色,自定义点击事件. 自定义图标组件的代码如下: 下面的代码是icon文件夹下面的4个文件 inde ...

  4. 微信小程序 - 自定义components组件详解A篇

    官网API:https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/component.html 自定义 ...

  5. 微信小程序video视频组件

    支持mp4和m3u8的视频格式,其中mp4的需要是h264的视频编码 .1.如果您使用video组件是mp4的但不能播放,大部分是由于编码的问题,当然排除文件不存在等这些客观的因素条件.2.如果使用m ...

  6. 微信小程序 - 自定义弹窗组件

    2019-01-06:简化了一些代码,以及增加了可用性. // 弹窗配置 dialogConfig: { // 弹窗 dialogvisible: false, options: { // 显示关闭按 ...

  7. 微信小程序自定义 tabbar

    一定的需求情况下,无法使用小程序原生的 tabbar 的时候,需要自行实现一个和 tabbar 功能一模一样的自制组件. 查阅了海量的博客和文档之后,亲自踩坑.总结了三种在不使用微信小程序原生 tab ...

  8. uni-app开发微信小程序引入UI组件库(Vant-weapp)步骤

    uni-app开发微信小程序引入UI组件库(Vant-weapp)步骤 这里以vant-weapp为例 uni-app官方文档介绍引入组件的方法 1. 新建相关目录 根目录下创建 wxcomponen ...

  9. 微信小程序自定义组件,提示组件

    微信小程序自定义组件,这里列举了一个常用的提示自定义组件,调用自定义组件中的方法和字段.仅供参考和学习. 编写组件: 在根目录下添加“components”目录,然后像添加Page页面一样添加自定义组 ...

  10. 腾讯技术分享:微信小程序音视频与WebRTC互通的技术思路和实践

    1.概述 本文来自腾讯视频云终端技术总监rexchang(常青)技术分享,内容分别介绍了微信小程序视音视频和WebRTC的技术特征.差异等,并针对两者的技术差异分享和总结了微信小程序视音视频和WebR ...

随机推荐

  1. 使用 shell 脚本拼接 srt 字幕文件 (srtcat)

    背景 前段时间迷上了做 B 站视频,主要是摩托车方面的知识分享.做的也比较粗糙,就是几张图片配上语音和字幕进行解说.尝试过自己解说,发现录制视频对节奏的要求还是比较高的,这里面水太深把握不住.好在以 ...

  2. 10分钟学会使用 Loki 日志聚合系统

    Loki 是一个由Grafana Labs 开发的开源日志聚合系统,旨在为云原生架构提供高效的日志处理解决方案. Loki 通过使用类似 Prometheus 的标签索引机制来存储和查询日志数据,这使 ...

  3. Java基础语法:类型转换、变量、常量

    Java基础语法:类型转换.变量.常量 类型转换 低---------->高 byte,short,char->int->long->float->double 从高到低 ...

  4. JZOJ 5346. 【NOIP2017提高A组模拟9.5】NYG的背包

    题目 分析 很神奇的贪心 \(Code\) #include<cstdio> #include<algorithm> using namespace std; typedef ...

  5. 自己从零写操作系统GrapeOS——1.GrapeOS介绍

    为了学习操作系统原理我自己写了一个简单的操作系统,取名叫GrapeOS. GrapeOS是一个x86多任务桌面操作系统,但非常简单,代码只有4千行. 下面我来简单介绍一下GrapeOS的功能. 1.桌 ...

  6. Spring Boot学习笔记(一)----概要与入门

    本文来自博客园,作者:{张果},转载请注明原文链接:{SpringBoot学习笔记(一)--SpringBoot概要与快速入门} 一.Spring Boot概要 没有Spring Boot开发项目时各 ...

  7. Bypass disable_functions 食用方法

    Bypass disable_functions 食用方法 目录 Bypass disable_functions 食用方法 1 上传Payload 2 直接使用sh反弹shell 3 上传 Payl ...

  8. key对象转换数组title

    before <!DOCTYPE HTML> <html> <head> <title>key对象转换数组title</title> < ...

  9. 【FPGA学习】MATLAB和FPGA实现FFT

    本博客记录一下在matlab设计和在FPGA平台实现FFT的方法,平台是Xilinx的ZYNQ 参考: COE文件制作与使用 Vivado使用技巧(9):COE文件使用方法 .coe文件生成 在某些I ...

  10. Typopa软件和计算机的基本内容

    Typopa软件和计算机的基本内容 TYPORA软件markdown的运用 输入#按空格键输入文本就形成了一个标题(几个#就是几级标题最高六级)或者ctrl加数字数字几就是几级标题. 输入*加空格就形 ...