e-video.vue 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. <template>
  2. <view>
  3. <view class="videoList">
  4. <view class="title">{{videoList[0].title}}</view>
  5. <view class="list">
  6. <view class="item" v-for="item in videoList" :key="item.id">
  7. <view class="name">{{item.videoName}}</view>
  8. <view class="icon" @click="detail(item.videoUrl,item.videoName)">
  9. <uni-icons type="videocam" size="24" color="#009FE8"></uni-icons>
  10. </view>
  11. </view>
  12. <!-- <view class="item" v-for="item in videoList" :key="item.id">
  13. <video :src="item.videoUrl" controls style="width: 100%;"></video>
  14. </view> -->
  15. </view>
  16. </view>
  17. </view>
  18. </template>
  19. <script>
  20. export default {
  21. props:[
  22. "videoList"
  23. ],
  24. data() {
  25. return {
  26. };
  27. },
  28. methods:{
  29. detail(path,name){
  30. console.log(path)
  31. uni.navigateTo({
  32. url:"../../index/record/record-video/record-video?name=" + name + "&url=" + path
  33. })
  34. }
  35. }
  36. }
  37. </script>
  38. <style lang="scss">
  39. .videoList{
  40. .title{
  41. line-height: 30px;
  42. border-left: 4px solid #009FE8;
  43. border-radius: 4px;
  44. padding-left: 10px;
  45. margin-bottom: 10px;
  46. }.list{
  47. .item{
  48. padding: 20rpx 25rpx;
  49. border-bottom: 1rpx solid #f4f4f4;
  50. display: flex;
  51. justify-content: space-between;
  52. .name{
  53. white-space: nowrap;
  54. overflow: hidden;
  55. text-overflow:ellipsis;
  56. }
  57. .icon{
  58. padding-left: 50rpx;
  59. }
  60. }
  61. }
  62. }
  63. </style>