www_inav_site
www_inav_site
  • 发布:2022-02-12 11:25
  • 更新:2022-12-20 11:03
  • 阅读:536

subNvue uni.createVideoContext() 创建视频上下文后不能控制视频

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win10

HBuilderX类型: 正式

HBuilderX版本号: 3.3.11

手机系统: 全部

手机厂商: 华为

手机机型: p30

页面类型: nvue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

测试过的手机:

手机是华为p30 鸿蒙os2.0.0

示例代码:
<template>  
  <swiper class="banner" circular :autoplay="bannerAutoplay" interval="5000" @change="bannerChange" indicator-dots indicator-active-color="#ed3221">  
    <swiper-item class="bannerItem" v-for="(item,index) in 3" :key="index">  
      <view class="videoBox" v-if="index == 2">  
        <video class="video" id="bannerVideo" ref="bannerVideo"  
          src="https://bingo-file.oss-cn-zhangjiakou.aliyuncs.com/app/webFile/2022/01/17/16423846697068379.mp4"  
          loop :controls="false" object-fit="cover" :enable-progress-gesture="false" :enable-play-gesture="false"  
        ></video>  
      </view>  
      <image v-else class="image" :src="'https://bingo-file.oss-cn-zhangjiakou.aliyuncs.com/app/webFile/2022/01/25/16430796336812867.png'"></image>  
    </swiper-item>  
  </swiper>  
</template>  
<script>  
export default {  
  data() {  
    return {  
      current: 0,  
      bannerAutoplay: true, // 轮播图自动播放  
      // bannerVideoContext: {}, // 轮播图视频上下文  
    }  
  },  
  mounted() {  
    // this.bannerVideoContext = uni.createVideoContext('bannerVideo',this)  
  },  
  methods: {  
    // 轮播图监听  
    bannerChange(e) {  
      this.current = e.detail.current  
      if (this.current == 2) {  
        this.bannerAutoplay = false  
        // this.bannerVideoContext.play() // 无效  
        this.$refs.bannerVideo[0].play()  
      } else {  
        this.bannerAutoplay = true  
      }  
    }  
  }  
}  
</script>  
<style scoped lang="scss">  
.banner {  
  width: 750rpx;  
  height: 264rpx;  
}  
.bannerItem {  
  width: 750rpx;  
  height: 264rpx;  
  padding: 0 24rpx;  
  box-sizing: border-box;  
}  
.videoBox {  
  width: 702rpx;  
  height: 264rpx;  
}  
.video {  
  width: 702rpx;  
  height: 264rpx;  
}  
.image {  
  width: 702rpx;  
  height: 264rpx;  
  border-radius: 16rpx;  
}  
</style>  

操作步骤:

bug必现

预期结果:

视频上下文可以控制

实际结果:

视频上下文不能控制

bug描述:

subNvue uni.createVideoContext()创建视频上下文后不能控制视频,我是用subNvue写的一个轮播图组件,轮播图中有一个视频,现在可以用ref实现控制

2022-02-12 11:25 负责人:无 分享
已邀请:
7***@qq.com

7***@qq.com - 期望泼天富贵,做个自在的人,不为钱财弯腰

这个bug解决了吗,一直都存在,一直没有反馈的吗

该问题目前已经被锁定, 无法添加新回复