小程序视频封面,切换播放并显示封面

需求

1.默认显示封面;

2.一个视频播放的时候,其他视频停止播放,并显示封面。

思路

1.通过wx:if判断当前视频是否是播放的状态,如果是就显示视频,如果不是就隐藏视频;

2.点击封面的时候,获取到该视频的id,进行判断,如果当前没有视频播放,就把该视频设置为播放的状态;如果当前有视频播放,则停止当前播放的视频,再播放你点击的这个视频。

           

               

                   

                   

                   

                   

               

           

       


 data: {


    playIndex: null, //用于记录当前播放的视频的索引值

    courseList: [

      {

        videoUrl: 'https://fxmv3-asset.oss-cn-zhangjiakou.aliyuncs.com/132a004191990de6d1dde6379a56987b.mp4', //视频路径

        coverUrl: '/images/home/1.png', //视频封面图

        duration: '03:00' //视频时长

      },

      {

        videoUrl: 'https://fxmv3-asset.oss-cn-zhangjiakou.aliyuncs.com/bddfba680554409e47aeb653ec5d58af.mp4',

        coverUrl: '/images/home/2.png',

        duration: '04:45'

      }

    ]

  },


 videoPlay: function (e) {

      var curIdx = e.currentTarget.dataset.index;


      // 没有播放时播放视频

    if (!this.data.playIndex) {

         this.setData({

           playIndex: curIdx

        });

       var videoContext = wx.createVideoContext('video' + curIdx); //这里对应的视频id

     videoContext.play();

   } else {

       // 有播放时先将prev暂停,再播放当前点击的current

      var videoContextPrev = wx.createVideoContext('video' + this.data.playIndex);

       if (this.data.playIndex != curIdx) {

        videoContextPrev.pause();

       }

        this.setData({

         playIndex: curIdx

         });

       var videoContextCurrent = wx.createVideoContext('video' + curIdx);

       videoContextCurrent.play();

     }

    },

你可能感兴趣的:(小程序视频封面,切换播放并显示封面)