index.js 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. // index.js
  2. // const db=wx.cloud.database()
  3. import { models, db } from '../../utils/cloudbase.js'
  4. import Dialog from '/vant-weapp/dialog/dialog';
  5. const app = getApp();
  6. Page({
  7. data: {
  8. // isLoggedIn: false, // 是否已登录
  9. carousellist: [],
  10. homepage_4: '',
  11. homepage_3: '',
  12. homepage_2: '',
  13. homepage_1: '',
  14. souimg: '',
  15. },
  16. onShow() {
  17. // 检查登录状态
  18. app.checkLoginStatus();
  19. // 获取轮播图数据
  20. this.getBanner();
  21. // 获取图片
  22. const fileIDs = [
  23. // 'cloud://cloud1-6g98iw7i28b01747.636c-cloud1-6g98iw7i28b01747-1367995226/images/banner/carousel_1.jpg',
  24. // 'cloud://cloud1-6g98iw7i28b01747.636c-cloud1-6g98iw7i28b01747-1367995226/images/banner/carousel_2.jpg',
  25. // 'cloud://cloud1-6g98iw7i28b01747.636c-cloud1-6g98iw7i28b01747-1367995226/images/banner/carousel_3.jpg',
  26. 'cloud://cloud1-6g98iw7i28b01747.636c-cloud1-6g98iw7i28b01747-1367995226/images/homepage/homepage_4.png',
  27. 'cloud://cloud1-6g98iw7i28b01747.636c-cloud1-6g98iw7i28b01747-1367995226/images/homepage/homepage_3.png',
  28. 'cloud://cloud1-6g98iw7i28b01747.636c-cloud1-6g98iw7i28b01747-1367995226/images/homepage/homepage_2.png',
  29. 'cloud://cloud1-6g98iw7i28b01747.636c-cloud1-6g98iw7i28b01747-1367995226/images/homepage/homepage_1.png',
  30. 'cloud://cloud1-6g98iw7i28b01747.636c-cloud1-6g98iw7i28b01747-1367995226/images/icon/sou.png',
  31. ];
  32. // 并发下载多个 fileID
  33. Promise.all(
  34. fileIDs.map(fileID => wx.cloud.downloadFile({ fileID }))
  35. ).then(results => {
  36. // 每个 result 对应一个下载结果
  37. const tempFilePaths = results.map(r => r.tempFilePath);
  38. console.log('全部下载成功:', tempFilePaths);
  39. this.setData({
  40. // carousellist: tempFilePaths.slice(0, 2),
  41. homepage_4: tempFilePaths[0],
  42. homepage_3: tempFilePaths[1],
  43. homepage_2: tempFilePaths[2],
  44. homepage_1: tempFilePaths[3],
  45. souimg: tempFilePaths[4]
  46. });
  47. }).catch(err => {
  48. console.error('有文件下载失败:', err);
  49. });
  50. },
  51. // 轮播数据
  52. async getBanner() {
  53. const { data } = await models.banner.list({
  54. filter: {
  55. where: {
  56. position: 0
  57. }
  58. },
  59. // envType: pre 体验环境, prod 正式环境
  60. envType: "prod",
  61. });
  62. // 返回查询到的数据
  63. this.setData({
  64. carousellist: data.records
  65. })
  66. },
  67. // 页面跳转 二级页面
  68. selectGroupOption(e) {
  69. const option = e.currentTarget.dataset.option;
  70. let url = '';
  71. switch (option) {
  72. case 'course':
  73. url = '/subpackages/kchome/kchome';
  74. break;
  75. case 'training':
  76. url = '/subpackages/pxhome/pxhome';
  77. break;
  78. case 'teaching':
  79. url = '/subpackages/jxhome/jxhome';
  80. break;
  81. case 'large':
  82. url = '/subpackages/zshome/zshome';
  83. break;
  84. default:
  85. return;
  86. }
  87. wx.navigateTo({
  88. url: url
  89. });
  90. },
  91. // async
  92. getData() {
  93. // const { data } = await models.login.list({
  94. // filter: {
  95. // where: {}
  96. // },
  97. // pageSize: 10, // 分页大小,建议指定,如需设置为其它值,需要和 pageNumber 配合使用,两者同时指定才会生效
  98. // pageNumber: 1, // 第几页
  99. // getCount: true, // 开启用来获取总数
  100. // // envType: pre 体验环境, prod 正式环境
  101. // envType: "prod",
  102. // });
  103. // // 返回查询到的数据列表 records 和 总数 total
  104. // console.log(data);
  105. // const { data } = await models.login.create({
  106. // data: {
  107. // name: "王五", // 名字
  108. // },
  109. // // envType: pre 体验环境, prod 正式环境
  110. // envType: "prod",
  111. // });
  112. // // 返回创建的数据 id
  113. // console.log(data);
  114. db.collection("homelist").get().then(res => {
  115. console.log(res);
  116. }).catch(err => {
  117. console.log(err);
  118. })
  119. },
  120. })