su-video.js 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. "use strict";
  2. const common_vendor = require("../../../common/vendor.js");
  3. require("../../index.js");
  4. require("../../url/index.js");
  5. require("../../store/index.js");
  6. require("../../store/app.js");
  7. require("../../api/promotion/diy.js");
  8. require("../../request/index.js");
  9. require("../../config/index.js");
  10. require("../../platform/index.js");
  11. require("../../platform/provider/wechat/index.js");
  12. require("../../platform/provider/wechat/miniProgram.js");
  13. require("../../api/member/auth.js");
  14. require("../../api/member/social.js");
  15. require("../../api/member/user.js");
  16. require("../../platform/provider/apple/index.js");
  17. require("../../platform/share.js");
  18. require("../../router/index.js");
  19. require("../../hooks/useModal.js");
  20. require("../../helper/index.js");
  21. require("../../helper/test.js");
  22. require("../../helper/digit.js");
  23. require("../../helper/throttle.js");
  24. require("../../platform/pay.js");
  25. require("../../api/pay/order.js");
  26. require("../../store/user.js");
  27. require("../../store/cart.js");
  28. require("../../api/trade/cart.js");
  29. require("../../api/pay/wallet.js");
  30. require("../../api/trade/order.js");
  31. require("../../api/promotion/coupon.js");
  32. require("../../store/sys.js");
  33. require("../../store/modal.js");
  34. require("../../config/zIndex.js");
  35. const _sfc_main = {
  36. __name: "su-video",
  37. props: {
  38. moveX: {
  39. type: [Number],
  40. default: 0
  41. },
  42. // 下标索引
  43. uid: {
  44. type: [Number, String],
  45. default: 0
  46. },
  47. // 视频高度
  48. height: {
  49. type: Number,
  50. default: 300
  51. },
  52. // 视频宽度
  53. width: {
  54. type: Number,
  55. default: 750
  56. },
  57. // 指定视频初始播放位置,单位为秒(s)
  58. initialTime: {
  59. type: Number,
  60. default: 1
  61. },
  62. src: {
  63. type: String,
  64. default: ""
  65. },
  66. poster: {
  67. type: String,
  68. default: "https://img1.baidu.com/it/u=1601695551,235775011&fm=26&fmt=auto"
  69. },
  70. autoplay: {
  71. type: Boolean,
  72. default: false
  73. }
  74. },
  75. emits: ["videoTimeupdate"],
  76. setup(__props, { expose, emit: emits }) {
  77. const props = __props;
  78. const vm = common_vendor.getCurrentInstance();
  79. const state = common_vendor.reactive({
  80. enableProgressGesture: false,
  81. // 手势滑动
  82. showModal: false
  83. // 弹框
  84. });
  85. const timeupdate = (e) => {
  86. emits("videoTimeupdate", e);
  87. };
  88. const videoErrorCallback = (e) => {
  89. console.log("视频错误信息:", e.target.errMsg);
  90. };
  91. const play = () => {
  92. console.log("视频开始");
  93. };
  94. const pause = () => {
  95. console.log("视频暂停");
  96. };
  97. const end = () => {
  98. console.log("视频结束");
  99. };
  100. const pausePlay = () => {
  101. const video = common_vendor.index.createVideoContext(`sVideo${props.index}`, vm);
  102. video.pause();
  103. };
  104. expose({
  105. pausePlay
  106. });
  107. return (_ctx, _cache) => {
  108. return {
  109. a: `sVideo${__props.uid}`,
  110. b: common_vendor.s({
  111. height: __props.height + "rpx"
  112. }),
  113. c: __props.src,
  114. d: state.enableProgressGesture,
  115. e: __props.initialTime,
  116. f: common_vendor.o(videoErrorCallback),
  117. g: common_vendor.o(timeupdate),
  118. h: common_vendor.o(play),
  119. i: common_vendor.o(pause),
  120. j: common_vendor.o(end),
  121. k: __props.poster,
  122. l: __props.autoplay
  123. };
  124. };
  125. }
  126. };
  127. const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__scopeId", "data-v-f4b9589e"], ["__file", "/Users/RuHu.Xu/Desktop/mall-newfeifan-zx-app/sheep/ui/su-video/su-video.vue"]]);
  128. wx.createComponent(Component);