index.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. // components/dayList/index.js
  2. let urlList = [];
  3. Component({
  4. /**
  5. * 组件的属性列表
  6. */
  7. properties: {
  8. mediaList: {
  9. type: Array,
  10. observer: function (n) {
  11. if (!n.length) return;
  12. urlList = [];
  13. let y = -1;
  14. for (let i = 0; i < n.length; i++) {
  15. const v = n[i];
  16. for (let p = 0; p < v.child.length; p++) {
  17. const item = v.child[p];
  18. item.index = ++y;
  19. urlList.push({
  20. url: item.url,
  21. type: item.mediaType,
  22. poster: item.poster || "",
  23. title: item.title
  24. });
  25. }
  26. }
  27. }
  28. }
  29. },
  30. /**
  31. * 组件的初始数据
  32. */
  33. data: {
  34. },
  35. /**
  36. * 组件的方法列表
  37. */
  38. methods: {
  39. showMedia(e) {
  40. const indexs = e.currentTarget.dataset.index.split("-");
  41. const row = this.data.mediaList[indexs[0]];
  42. const item = row.child[indexs[1]];
  43. if (row.mediaType === 'image') {
  44. wx.previewMedia({
  45. sources: urlList,
  46. current: item.index
  47. })
  48. return
  49. }
  50. wx.navigateTo({
  51. url: "/pages/videoDetail/index?id=" + item.id + '&group=' + row.location
  52. })
  53. }
  54. }
  55. })