wechat大作业-《运动小程序》

本文详细介绍了如何使用微信开发者工具,结合JavaScript和JSON技术,开发一款运动类的小程序。内容涵盖小程序的基础架构,页面路由,数据管理,以及交互实现等关键点。
摘要由CSDN通过智能技术生成

首页
任务
统计
我的


```javascript
// pages/home/home.js
const req=require('../../utils/fetch.js');
const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    text:''
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    wx.showLoading({
      title: '努力加载中'
    })
    req.fetch('sports/img').then(res=>{
      wx.hideLoading();
      this.setData({pageData:res.data})
      console.log(res);
    },()=>{
      //关闭加载窗口
      wx.hideLoading({
        success: (res) => {},
      })
    })

    var now = new Date()
    var hour = now.getHours()
    var text = ''
    if (hour < 6) {
      text = '凌晨好'
      console.log("凌晨好!")
    } else if (hour < 9) {
      text = '早上好'
      console.log("早上好!")
    } else if (hour < 12) {
      text = '上午好'
      console.log("上午好!")
    } else if (hour < 14) {
      text = '中午好'
      console.log("中午好!")
    } else if (hour < 17) {
      text = '下午好'
      console.log("下午好!")
    } else if (hour < 19) {
      text = '傍晚好'
      console.log("傍晚好!")
    } else if (hour < 22) {
      text = '晚上好'
      console.log("晚上好!")
    } else {
      text = '夜里好'
      console.log("夜里好!")
    }
    this.setData({
      text:text
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})
// pages/user/user.js
const req=require('../../utils/fetch.js');
Page({

  /**
   * 页面的初始数据
   */
  data: {
    plain:true,
    images : [// 准备展示的图片
      { url: "/images/photo/pic-1.jpg", height: 950, width: 634 },
      { url: "/images/photo/pic-2.jpg", height: 750, width: 500 },
      { url: "/images/photo/pic-3.jpg", height: 800, width: 800 },
      { url: "/images/photo/pic-4.jpg", height: 953, width: 631 },
      { url: "/images/photo/pic-5.jpg", height: 752, width: 967 },
      { url: "/images/photo/pic-6.jpg", height: 776, width: 845 },
      { url: "/images/photo/pic-7.jpg", height: 900, width: 1350 },
    ],
    leftShowImages : [],// 左边已经展示的图片
    rightShowImages: [],// 右边已经展示的图片
    leftHeight : 0,
    rightHeight : 0,
    index : 0// 已经加载图片的索引
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    wx.showLoading({
      title: '努力加载中'
    })
    req.fetch('user/img').then(res=>{
      wx.hideLoading();
      this.setData({pageData:res.data})
      console.log(res);
    },()=>{
      //关闭加载窗口
      wx.hideLoading({
        success: (res) => {},
      })
    })

    var length = this.data.images.length
    for (var i = 0; i < length; i++) {
      this.loadImage(this)
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },

  // 可根据容器中图片的实时高度(模拟)进行图片的添加
  loadImage: function (that) {
    var leftHeight = this.data.leftHeight// 左容器高度
    var rightHeight = this.data.rightHeight// 右容器高度
    var index = this.data.index// 加载图片的索引
    var images = this.data.images// 总共要加载的图片

    // 这个值在不同的手机中是不同的,但是不影响整体的效果,因为最终的高度是按照每张图片的
    // 长宽比进行计算,虽然不是容器的实时高度,但是左右容器高度的大小关系是可以计算出来的
    var widthFix = 201;// 左(右)容器中图片的固定宽度(iPhone6P)

    var min = Math.min(leftHeight, rightHeight)// 计算左右容器高度的最小值
    // 添加要新加载的图
    if (min == leftHeight) {
      var leftShowImages = this.data.leftShowImages
      leftShowImages.push(images[index])
      that.setData({
        leftShowImages: leftShowImages
      })

      // 计算当前容器内图片的高度
      var currHeight = (widthFix * images[index].height) / images[index].width
      // 获取图片高度
      leftHeight += currHeight

      // console.log("左高度" + leftHeight)

    } else {
      var rightShowImages = this.data.rightShowImages
      rightShowImages.push(images[index])
      that.setData({
        rightShowImages: rightShowImages
      })

      // 按照长宽比计算的容器中图片应该的高
      var currHeight = (widthFix * images[index].height) / images[index].width
      // 获取图片高度
      rightHeight += currHeight

    }

    // 索引加1
    index++;
    that.setData({
      index: index,
      leftHeight: leftHeight,
      rightHeight: rightHeight
    })
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    this.setData({
      index : 0
    })

    var length = this.data.images.length
    for (var i = 0; i < length; i++) {
      this.loadImage(this)
    }
  },
})
微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码 【微信小程序-毕设期末大作业微信小程序源码
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王力士

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值