都2020年了,你还不会小程序开发吗 1

简介: 都2020年了,你还不会小程序开发吗

基于微信小程序的天气预报终端设计

本次开发是利用微信开发者工具Nightly V1.02版本进行开发的。

开发语言是WXML+WXSS+JS

天气查询设有当前天气,未来三天,一周天气,24小时温度及气温变化,相关生活指数,其他城市天气查询等功能。

先看效果图



20200426191748846.png

20200426164525842.png

20200426164541569.png

20200426164553775.png


20200426164644969.png


20200426164738449.png


20200426164749467.png

1项目设计内容

(1)首页登录模块能获取用户登录的信息,显示用户头像,并且有2个接口能进入天气查询和计算器。

(2)天气查询模块能显示当天的天气信息:温度,风向,风力,阴晴,PM2.5,未来三天,一周天气,24小时温度及气温变化,相关生活指数,其他城市天气查询和新冠肺炎疫情查询。

(3)计算器模块能做简单的15位的+、-、*、/、%运算,用户输入的不符合运算规则,条件语句判断后,控制台打印NaN,不做任何操作.

(4)将这3个板块整合到一起,具有良好的页面跳转和交互功能。

1.1整体思路

本次开发是利用微信开发者工具Nightly V1.02版本进行开发的,开发人员需要具备WXML+WXSS+JS三种前端语言基础即可开发调试。该开发工具有编辑器,模拟器,调试器,代码在编辑器内被编译运行后其效果会实时显示在模拟器上,如果编译不通过控制台会报错,提示报错信息,开发者可以在调试器上单步调试运行。模拟器选择的是iPhone6/7/8机型,网络选择为WiFi。本项目是设计天气预报加简易计算器的应用,主要介绍主板块天气查询,副板块简易计算器的开发难度不是很大,但也有很多细节之处。整体项目,分为三个大页面,主页面index,作为首页上面显示用户信息、头像。下面有2个模块,天气查询weather和计算器calculator,用户根据需求自行点击进入。我们用到微信平台提供给用户的大概设计模板,这里包括系统初始化组件app.json、app.js、app.wxss、project.config.json,是为了对整个项目进行初始化配置,这部分开发者不用担心,只需在上面进行操作修改为用户指定样式就行。由于在天气查询页面会实时获取用户的动态地理位置,需要用到百度地图的微信小程序JSAPI接口,因此我们还需要在https://lbsyun.baidu.com/上下载第三方工具链bmap-wx.min.js作为本项目的库函数封装在libs中,我们在设计开发该项目时,为了后期的维护和修改,将页面布局、页面样式、页面效果分别单独封装起来。另外在天气查询页面由于气候是多种的,我将"晴", “多云”, “阴”, “阵雨”, “雷阵雨”,“小雪”, “中雪”, “大雪”, “暴雪”, “雾”, “冻雨”,……气候类型抽离出来单独封装,并用数组、指针进行循环遍历,达到动态实时现实天气的目的。我将本次将要用到的png图片和icon图标都放在img文件夹下,当要用到时,直接绝对路径引用或者数组循环遍历。

2项目开发设计的总目录结构



20200426165755423.png

libs库文件夹下放的是百度mapAPI文件;

pages文件夹下放index首页,weather天气查询,calculator计算器,city城市天气查询,virus新冠疫情查询

src文件夹下放icon图标和img背景图;

style文件夹下放整个页面的布局样式;

utils文件夹下放整个项目所用到的工具类;

project.config.json,site.json都是小程序逻辑层和渲染层的配置;

app.json,app.js,app.wxss用来实现页面的交互和跳转。

3项目的详细设计及功能的实现

3.1认识开发者工具及搭建环境

3.1.1注册账号申请APPID

1,注册账号。打开微信公众平台(https://mp.weixin.qq.com)右上角立即注册。


20200426170441622.png

2,选择需要注册的账号类型,这里选择小程序-个人,在根据指引填写资料提交。

20200426170548498.png


3,完成邮箱激活,并登记信息就可以有账号。


2020042617062696.png


安装开发者工具

登录小程序后台 ,我们可以在菜单 “首页”-“设置”-“基本设置” 看到小程序的 AppID 了 ,小程序的 AppID 相当于小程序平台的一个身份证。


20200426170807276.png

3.1.3安装并认识开发者工具

有小程序帐号之后,我们需要一个工具来开发小程序。前往开发者工具下载页面https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html 根据自己的操作系统下载对应的安装包进行安装。打开小程序开发者工具,用微信扫码登录开发者工具即可。

20200426170946466.png


登录页

在登录页,可以使用微信扫码登录开发者工具,开发者工具将使用这个微信帐号的信息进行小程序的开发和调试。



2020042617121444.png


主界面

开发者工具主界面,从上到下,从左到右,分别为:菜单栏、工具栏、模拟器、资源管理器、编辑区、调试器 六大部分。


20200426171257301.png

3.1.4登录开发者工具并创建项目

进入开发者工具扫码登陆,后点击小程序-创建新项目-选择文件存储路径E盘的本科毕业设计路径下-选择小程序名字本科毕业设计-小程序AppID:wxe344903caa37d

58f,创建成功进入到项目。

当符合以下条件时,可以在本地创建一个小程序项目

1.需要一个小程序的 AppID;如没有 AppID,可以选择申请使用测试号。

2.登录的微信号需要是该 AppID 的开发者;

3.需要选择一个空目录,或者选择的非空目录下存在 app.json 或者 project.config

.json。当选择空目录时,可以选择是否在该目录下生成一个简单的项目。

2020042617155936.png

3.1.5搭建环境及配置项目

我们首先要做的是初始化项目配置,可以看到微信已经已经为开发者提供了一套Hello World程序。登录wx.login({success: res => {发送 res.code 到后台换取 openId, sessionKey, unionId,wx.getUserInfo({success: res => 可以将 res 发送给后台解码出 unionId, this.globalData.userInfo = res.userInfo,由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回,所以此处加入 callback 以防止这种情况,获取用户信息wx.getSetting({success: res => {if (res.authSetting[‘scope.userInfo’]) ,已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框。由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回, 在没有 open-type=getUserInfo 版本的兼容处理,所以此处加入 callback 以防止这种情况。点击即可获取头像昵称,微信授权允许,即可看到用户头像。

20200426171702737.png


20200426171716522.png

2020042617180780.png

//index.js
//获取应用实例
var app = getApp()
Page({
  data: {
    userInfo: {
      avatar: '../../src/img/menu-img.jpg',
      name: "金阳",
      post: "前端开发实习生",
      desc: "本科毕业设计!欢迎大家使用我的小程序,若有好的意见或建议,请发到邮箱1571849142@qq.com"
    }
  },
  onShareAppMessage: function () {
    return {
      title: '欢迎转发我的小程序',
      path: '/pages/index/index.js'
    }
  },
  //事件处理函数
  weatherSearch: () => {
    wx.navigateTo({
      url: '../bar/index'
    });
  },
  calc: () => {
    wx.navigateTo({
      url: '../calculator/calculator'
    });
  },
  virus: () => {
    wx.navigateTo({
      url: '../virus/virus'
    });
  },
  map: () => {
    wx.navigateTo({
      url: '../map/map'
    });
  },
  calendarList: () => {
    wx.navigateTo({
      url: '../calendar/index'
    });
  },
  onLoad: function () {
  }
})


相关文章
|
1月前
|
小程序 前端开发 测试技术
小程序开发心得体会
小程序开发心得体会
|
2月前
|
小程序 IDE API
8月开发者日回顾|小程序开发实用工具分享
8月开发者日回顾|小程序开发实用工具分享
27 0
|
7月前
|
移动开发 小程序 前端开发
微信小程序 | 小程序开发
微信小程序 | 小程序开发
|
11月前
|
JSON 小程序 前端开发
都2020年了,你还不会小程序开发吗 2
都2020年了,你还不会小程序开发吗
|
11月前
|
JSON 小程序 JavaScript
【微信小程序】你了解小程序开发吗?
【微信小程序】你了解小程序开发吗?
197 0
|
存储 JSON 缓存
小程序开发的一些技巧
小程序开发的一些技巧
177 0
|
移动开发 开发框架 小程序
小程序开发之框架篇
本篇文章会从跨端框架的角度入手,带你了解如何选择小程序开发框架,并介绍我们的最佳实践
|
缓存 小程序 前端开发
「趣学前端」小程序开发的喜怒哀乐
用技术实现梦想,用梦想打开创意之门。今日分享小程序开发的喜怒哀乐。
92 1
「趣学前端」小程序开发的喜怒哀乐
|
JSON 小程序 前端开发
「趣学前端」小程序开发的喜怒哀乐2.0版本
用技术实现梦想,用梦想打开创意之门。分享小程序开发中如何封装组件。
243 1
「趣学前端」小程序开发的喜怒哀乐2.0版本
|
存储 开发框架 JSON
小程序开发入门及多端开发浅析
本部通过一个demo 入门介绍微信小程序云开发,并引申出跨端开发的现状,简要介绍各跨端开发框架,并简述其跨端开发原理。
262 1

热门文章

最新文章

相关实验场景

更多