微信小程序调用天气接口并且渲染在页面过程详解


Posted in Javascript onJune 24, 2019

前两天写了关于组件库 iView Weapp的教程,其实也就是把文档上的例子拿出来体验了一遍,今天写一个具体的例子,调用一个免费的天气接口的api,并且把所获取的内容展示在前端的界面,前端界面与 iView Weapp结合,展示的一个小的demo.

先上效果

微信小程序调用天气接口并且渲染在页面过程详解

开始写代码:

1:找打一个免费的天气接口

免费接口api:

https://www.apiopen.top/api.html#top

https://www.apiopen.top/weatherApi?city=%E4%B8%8A%E6%B5%B7

2:写js代码

写一个request请求,把准备好的天气接口放在url里面,当请求成功的时候,在控制台打印一下返回的res.data数据

wx.request({
url: 'https://www.apiopen.top/weatherApi?city=%E4%B8%8A%E6%B5%B7',
header: {
'content-type': 'application/json'
},
success: res => {
console.log(res.data)
}
})

这个时候可以看到控制台已经有打印了接口数据了

微信小程序调用天气接口并且渲染在页面过程详解

3:接收到了数据之后,是对数据进行处理

在请求接口成功之后,用setData接收数据,并且需在data中声明一个接收数据的变量。

微信小程序调用天气接口并且渲染在页面过程详解

4:js写完之后,现在开始写wxml里面的内容,将数据渲染在界面

前面说用的是组件库 iView Weapp,样式可以自己选择,我这里选了一个卡片。

在使用组件的时候,需要在json里面引入一下:

微信小程序调用天气接口并且渲染在页面过程详解

https://weapp.iviewui.com/components/card

将里面的代码复制过来,放在wxml,并且根据改成自己需要的。

<view class='list-li mflex' wx:for="{{list.forecast}}" wx:key="index">
<i-card title="{{list.city}}天气" extra="{{list.city}}" thumb="https://i.loli.net/2017/08/21/599a521472424.jpg">
<view slot="content">
{{item.date}} 
{{item.high}} 
{{item.low}} 
</view>
<view slot="footer">{{list.ganmao}}</view>
</i-card>
</view>

ok,到这里就完成了。

5:贴一下完整的代码:

json:

{
"usingComponents": {
"i-card": "../../dist/card/index"
}
}

js:

Page({
data: {
list: []
},
onLoad: function (options) {
wx.request({
url: 'https://www.apiopen.top/weatherApi?city=%E4%B8%8A%E6%B5%B7',
header: {
'content-type': 'application/json'
},
success: res => {
console.log(res.data)
this.setData({
//第一个data为固定用法,第二个data是json中的data
list: res.data.data
})
}
})
},
})

wxml:

<view class='list-li mflex' wx:for="{{list.forecast}}" wx:key="index">
<i-card title="{{list.city}}天气" extra="{{list.city}}" thumb="https://i.loli.net/2017/08/21/599a521472424.jpg">
<view slot="content">
{{item.date}} 
{{item.high}} 
{{item.low}} 
</view>
<view slot="footer">{{list.ganmao}}</view>
</i-card>
</view>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
用js实现判断当前网址的来路如果不是指定的来路就跳转到指定页面
May 02 Javascript
Firefox中beforeunload事件的实现缺陷浅析
May 03 Javascript
12种不宜使用的Javascript语法整理
Nov 04 Javascript
jQuery中toggle()函数的使用实例
Apr 17 Javascript
JS实现Select的option上下移动的方法
Mar 01 Javascript
JavaScript中数组的22种方法必学(推荐)
Jul 20 Javascript
video.js使用改变ui过程
Mar 05 Javascript
AngularJS实现的获取焦点及失去焦点时的表单验证功能示例
Oct 25 Javascript
vue使用el-upload上传文件及Feign服务间传递文件的方法
Mar 15 Javascript
详解js实时获取并显示当前时间的方法
May 10 Javascript
JS中的模糊查询功能
Dec 08 Javascript
javascript canvas时钟模拟器
Jul 13 Javascript
微信小程序-可移动菜单的实现过程详解
Jun 24 #Javascript
webpack自动打包和热更新的实现方法
Jun 24 #Javascript
Promise扫盲贴
Jun 24 #Javascript
深入学习js函数的隐式参数 arguments 和 this
Jun 24 #Javascript
前端天气插件tpwidget使用方法详解
Jun 24 #Javascript
JavaScript深入V8引擎以及编写优化代码的5个技巧
Jun 24 #Javascript
JS实现给数组对象排序的方法分析
Jun 24 #Javascript
You might like
php集成环境xampp中apache无法启动问题解决方案
2014/11/18 PHP
jQuery中delegate和on的用法与区别详细解析
2014/01/26 Javascript
javascript不同类型数据之间的运算的转换方法
2014/02/13 Javascript
js获取当前日期时间及其它操作汇总
2015/04/17 Javascript
javascript实现加载xml文件的方法
2015/11/24 Javascript
学习javascript面向对象 理解javascript对象
2016/01/04 Javascript
Vue实例简单方法介绍
2017/01/20 Javascript
使用JavaScript判断用户输入的是否为正整数(两种方法)
2017/02/05 Javascript
微信小程序 基础知识css样式media标签
2017/02/15 Javascript
jquery dataTable 获取某行数据
2017/05/05 jQuery
详解vue.js的事件处理器v-on:click
2017/06/27 Javascript
nodejs读取本地中文json文件出现乱码解决方法
2018/10/10 NodeJs
Angular之jwt令牌身份验证的实现
2020/02/14 Javascript
sublime python3 输入换行不结束的方法
2018/04/19 Python
Python迭代器定义与简单用法分析
2018/04/30 Python
python发送告警邮件脚本
2018/09/17 Python
PyCharm+PySpark远程调试的环境配置的方法
2018/11/29 Python
解决Python一行输出不显示的问题
2018/12/03 Python
我就是这样学习Python中的列表
2019/06/02 Python
Python实现决策树并且使用Graphviz可视化的例子
2019/08/09 Python
win10系统Anaconda和Pycharm的Tensorflow2.0之CPU和GPU版本安装教程
2019/12/03 Python
kafka-python 获取topic lag值方式
2019/12/23 Python
python中Ansible模块的Playbook的具体使用
2020/05/28 Python
python之pygame模块实现飞机大战完整代码
2020/11/29 Python
使用HTML5中的contentEditable来将多行文本自动增高
2016/03/01 HTML / CSS
Saucony澳大利亚官网:美国跑鞋品牌,运动鞋中的劳斯莱斯
2018/05/05 全球购物
个人实用简单的自我评价
2013/10/19 职场文书
白酒业务员岗位职责
2013/12/27 职场文书
统计岗位职责
2014/02/21 职场文书
会计岗位职责模板
2014/03/12 职场文书
小学生运动会报道稿
2014/09/12 职场文书
政风行风评议心得体会
2014/10/21 职场文书
一年级小学生评语大全
2014/12/25 职场文书
研讨会通知
2015/04/27 职场文书
Python基础之数据类型知识汇总
2021/05/18 Python
SQL Server使用CROSS APPLY与OUTER APPLY实现连接查询
2022/05/25 SQL Server