All Projects → brandonxiang → weapp-weatherfine

brandonxiang / weapp-weatherfine

Licence: MIT license
A weapp for weather forecast

Programming Languages

javascript
184084 projects - #8 most used programming language

weapp-weatherfine

It is a demp of weapp for weather forecast. Weapp is a small web application by wechat.

Update temperature problem:

It is difficult to determine whether we should update weather info. Two criterion is built: First: the last-updated time for seniverse should be within 2 hours. Second: the last-checked time should be within 1 hour.

TODO:

  • Customerized languange setting
  • Customerized temperature unit setting
  • Customerized switcher with different cities
  • add a util for set city Name
  • keep storage for weather data and how long for updating
  • keep storage for city list
  • [] more information by free api
  • update setting page: value should be placed on the right
  • [] position request fix
  • if version is changed, localstorage will be clear

微信小程序笔记二:天气应用

源码github地址在此,记得点星: https://github.com/brandonxiang/weapp-weatherfine

构思

查询用户位置的天气

我在构思要做一款基于位置的天气预报的程序。小程序需要获取位置数据,获取该城市的天气信息。这样可以让全国各个城市的人查询到属于自己的天气信息。

但是问题来了,在调用微信小程序的定位服务的过程中,只会返回坐标位置,并不会返回城市信息。由于天气状况的查询是根据城市的信息来查询。这是我们需要进行一次“把坐标转换为城市名称”的转换,依靠高德地图的反地址编码。

自定义城市

根据用户登陆后的用户信息,每个用户可以自定义自己所选的城市。由于每个用户的信息不同,这需要用户信息的区分。

这个功能并未完成开发,只满足北京和上海城市天气的切换。

设置

针对语言和温度单位进行个性定制化的设置。其中,语言包括中文和英语,温度单位包括华氏度和摄氏度。

界面

界面

优缺点

经过一番的“小程序”体验后,说说它的优缺点:

  • 优点

    • 接口完整度高
    • 极其容易上手,如果有vue的经验更佳
  • 缺点

    • 缺乏第三方库支持,不能用包管理工具
    • 很其他框架缺乏通用性,想转成web app非常麻烦
    • css语法可以,但是并没有扩展sass等

总体用下来,wx.requestwx.login等接口给人一种似曾相识的感觉,但是小程序有很多的限制,可说明了它的不成熟性。

有人说微信有野心做成一款wechatOS,但是我觉得还是不太可能。从两个方面,第一,不是所有厂家愿意重新写一款应用去满足现有的功能。因为小程序对用户的“黏度”不大,还不如自己开发一款App,满足ios和安卓的用户。往往小程序不过成为“试验品”,不过是一款简化版的应用。第二,代码的不通用性,代码不能重复用于网页版等。同时,其扩展性也非常差,就像少了几个“键”的键盘,用的时候会捉襟见肘。所以,这样引发了关于小程序和PWA之间的讨论。

详情参考说说 PWA 和微信小程序,PWA(Progressive Web App)是Google在2015年提出来,还不过是网页应用,但是实现类似原生App的功能,包括消息推送后台加载离线使用原生应用界面桌面图标等类似桌面应用的功能。当然前提是浏览器对它的支持。PWA与生俱来的优点就是它的代码通用性,这是小程序所不具有的。如需了解更多请关注

##注意

由于高德地图和心知天气的key是个人开发者的key,如果你需要fork,请自行更换key。

转载,请表明出处。总目录跨平台快速开发

请关注我的微信公众号

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].