• 后台交互-首页->与后台数据进行交互,wsx的使用


    • 与后台数据进行交互
    • wsx的使用

    1.与后台数据进行交互

    1. // index.js
    2. // 获取应用实例
    3. const app = getApp()
    4. const api=require("../../config/app.js")
    5. const util=require("../../utils/util.js")
    6. Page({
    7. data: {
    8. imgSrcs:[
    9. {
    10. "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner1.png",
    11. "text": "1"
    12. },
    13. {
    14. "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner2.png",
    15. "text": "2"
    16. },
    17. {
    18. "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner3.png",
    19. "text": "3"
    20. },
    21. {
    22. "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner4.png",
    23. "text": "4"
    24. },
    25. {
    26. "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner5.png",
    27. "text": "5"
    28. },
    29. {
    30. "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner6.png",
    31. "text": "6"
    32. },
    33. ],
    34. },
    35. // 事件处理函数
    36. bindViewTap() {
    37. wx.navigateTo({
    38. url: '../logs/logs'
    39. })
    40. },
    41. loadMeetInfos(){
    42. util.request(api.IndexUrl).then(res => {
    43. console.log(res);
    44. this.setData({
    45. lists:res.data.infoList
    46. })
    47. });
    48. // let that=this;
    49. // wx.request({
    50. // url: api.IndexUrl,
    51. // dataType: 'json',
    52. // success(res) {
    53. // console.log(res)
    54. // that.setData({
    55. // lists:res.data.data.infoList
    56. // })
    57. // }
    58. // })
    59. },
    60. loadSwiperImgs(){
    61. let that=this;
    62. // wx.request({
    63. // url: api.SwiperImgs,
    64. // dataType: 'json',
    65. // success(res) {
    66. // console.log(res)
    67. // that.setData({
    68. // imgSrcs:res.data.images
    69. // })
    70. // }
    71. // })
    72. },
    73. onLoad() {
    74. if (wx.getUserProfile) {
    75. this.setData({
    76. canIUseGetUserProfile: true
    77. })
    78. }
    79. this.loadSwiperImgs();
    80. this.loadMeetInfos();
    81. },
    82. getUserProfile(e) {
    83. // 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认,开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
    84. wx.getUserProfile({
    85. desc: '展示用户信息', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
    86. success: (res) => {
    87. console.log(res)
    88. this.setData({
    89. userInfo: res.userInfo,
    90. hasUserInfo: true
    91. })
    92. }
    93. })
    94. },
    95. getUserInfo(e) {
    96. // 不推荐使用getUserInfo获取用户信息,预计自2021年4月13日起,getUserInfo将不再弹出弹窗,并直接返回匿名的用户个人信息
    97. console.log(e)
    98. this.setData({
    99. userInfo: e.detail.userInfo,
    100. hasUserInfo: true
    101. })
    102. }
    103. })
    1. "{{true}}" autoplay="{{true}}">
    2. for="{{imgSrcs}}" wx:key="*text">
    3. "{{item.img}}">
    4. "mobi-title">
    5. "mobi-icon">
    6. 会议信息
    7. for-items="{{lists}}" wx:for-item="item" wx:key="item.id">
    8. "list" data-id="{{item.id}}">
    9. "list-img">
    10. "video-img" mode="scaleToFill" src="{{item.image !=null ? item.image:'/static/persons/1.jpg'}}">
    11. "list-detail">
    12. "list-title">{{item.title}}
    13. "list-tag">
    14. "state">{{item.state}}
    15. "join">"list-num">{{item.num}}人报名
    16. "list-info">{{item.location}}|{{item.starttime}}
    17. "section bottom-line">
    18. 到底啦
    1. //oamin\config\app.js
    2. // 以下是业务服务器API地址
    3. // 本机开发API地址
    4. var WxApiRoot = 'http://localhost:8080/wx/';
    5. // 测试环境部署api地址
    6. // var WxApiRoot = 'http://192.168.0.101:8070/demo/wx/';
    7. // 线上平台api地址
    8. //var WxApiRoot = 'https://www.oa-mini.com/demo/wx/';
    9. module.exports = {
    10. IndexUrl: WxApiRoot + 'home/index', //首页数据接口
    11. SwiperImgs: WxApiRoot+'swiperImgs', //轮播图
    12. MettingInfos: WxApiRoot+'meeting/list', //会议信息
    13. };

    2.wsx的使用

    1. "{{true}}" autoplay="{{true}}">
    2. for="{{imgSrcs}}" wx:key="*text">
    3. "{{item.img}}">
    4. "/utils/comm.wxs" module="tools" />
    5. "mobi-title">
    6. "mobi-icon">
    7. 会议信息
    8. for-items="{{lists}}" wx:for-item="item" wx:key="item.id">
    9. "list" data-id="{{item.id}}">
    10. "list-img">
    11. "video-img" mode="scaleToFill" src="{{item.image !=null ? item.image:'/static/persons/1.jpg'}}">
    12. "list-detail">
    13. "list-title">{{item.title}}
    14. "list-tag">
    15. "state">
    16. {{tools.getStateName(item.state)}}
    17. "join">"list-num">{{tools.getNum(item.cnyuze,item.liexize,item.zhuchiren)}}人报名
    18. "list-info">{{item.location}}|{{tools.formatDate(item.starttime)}}
    19. "section bottom-line">
    20. 到底啦
    1. //utils\comm.wxs
    2. function formatDate(ts, option) {
    3. var date = getDate(ts)
    4. var year = date.getFullYear()
    5. var month = date.getMonth() + 1
    6. var day = date.getDate()
    7. var week = date.getDay()
    8. var hour = date.getHours()
    9. var minute = date.getMinutes()
    10. var second = date.getSeconds()
    11. //获取 年月日
    12. if (option == 'YY-MM-DD') return [year, month, day].map(formatNumber).join('-')
    13. //获取 年月
    14. if (option == 'YY-MM') return [year, month].map(formatNumber).join('-')
    15. //获取 年
    16. if (option == 'YY') return [year].map(formatNumber).toString()
    17. //获取 月
    18. if (option == 'MM') return [mont].map(formatNumber).toString()
    19. //获取 日
    20. if (option == 'DD') return [day].map(formatNumber).toString()
    21. //获取 年月日 周一 至 周日
    22. if (option == 'YY-MM-DD Week') return [year, month, day].map(formatNumber).join('-') + ' ' + getWeek(week)
    23. //获取 月日 周一 至 周日
    24. if (option == 'MM-DD Week') return [month, day].map(formatNumber).join('-') + ' ' + getWeek(week)
    25. //获取 周一 至 周日
    26. if (option == 'Week') return getWeek(week)
    27. //获取 时分秒
    28. if (option == 'hh-mm-ss') return [hour, minute, second].map(formatNumber).join(':')
    29. //获取 时分
    30. if (option == 'hh-mm') return [hour, minute].map(formatNumber).join(':')
    31. //获取 分秒
    32. if (option == 'mm-dd') return [minute, second].map(formatNumber).join(':')
    33. //获取 时
    34. if (option == 'hh') return [hour].map(formatNumber).toString()
    35. //获取 分
    36. if (option == 'mm') return [minute].map(formatNumber).toString()
    37. //获取 秒
    38. if (option == 'ss') return [second].map(formatNumber).toString()
    39. //默认 时分秒 年月日
    40. return [year, month, day].map(formatNumber).join('-') + ' ' + [hour, minute, second].map(formatNumber).join(':')
    41. }
    42. function formatNumber(n) {
    43. n = n.toString()
    44. return n[1] ? n : '0' + n
    45. }
    46. function getWeek(n) {
    47. switch(n) {
    48. case 1:
    49. return '星期一'
    50. case 2:
    51. return '星期二'
    52. case 3:
    53. return '星期三'
    54. case 4:
    55. return '星期四'
    56. case 5:
    57. return '星期五'
    58. case 6:
    59. return '星期六'
    60. case 7:
    61. return '星期日'
    62. }
    63. }
    64. function getStateName(state){
    65. console.log(getStateName);
    66. if(state==1){
    67. return "待审核"
    68. }else if(state==2){
    69. return "审核通过"
    70. }else if(state==3){
    71. return "审核不通过"
    72. }else if(state==4){
    73. return "代开会议"
    74. }
    75. return "其他"
    76. }
    77. function getNum(canyuze,liexize,zhuchiren){
    78. var person=canyuze + "," + liexize + "," + zhuchiren;
    79. return person.split(",").length;
    80. }
    81. module.exports = {
    82. getStateName: getStateName,
    83. getNum:getNum,
    84. formatDate:formatDate
    85. };

  • 相关阅读:
    STM32CubeMX教程12 DMA 直接内存读取
    Azure Data Factory(十)Data Flow 组件详解
    魔性洗脑神曲掀起模仿热潮,品牌为何热衷“打歌”?
    2023第二届陇剑杯网络安全大赛 SS Writeup
    区别:b、B、KB、M、MB、GB、TB、PB、EB、ZB、YB、BB以及它们之间的关系
    SQL 教程||SQL 简介
    Java编程实战12:解数独
    pytorch的F.cross_entropy交叉熵函数和标签平滑函数
    【无标题】
    《性能之巅第2版》阅读笔记(二)--CPU监测
  • 原文地址:https://blog.csdn.net/weixin_73471776/article/details/133956994