su-video.js 3.6 KB

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