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


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 函数调用模式小结
Dec 26 Javascript
jquery 事件冒泡的介绍以及如何阻止事件冒泡
Dec 25 Javascript
JQueryEasyUI Layout布局框架的使用
Apr 08 Javascript
JavaScript中的继承方式详解
Feb 11 Javascript
Jquery的基本对象转换和文档加载用法实例
Feb 25 Javascript
js enter键激发事件实例代码
Aug 17 Javascript
关于List.ToArray()方法的效率测试
Sep 30 Javascript
JS判断是否手机或pad访问实现方法
Dec 09 Javascript
Ionic2调用本地SQlite实例
Apr 22 Javascript
Vue 实现列表动态添加和删除的两种方法小结
Sep 07 Javascript
鸿蒙系统中的 JS 开发框架
Sep 18 Javascript
解决antd 下拉框 input [defaultValue] 的值的问题
Oct 31 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和MySql来与ODBC数据连接
2006/10/09 PHP
php二维数组排序与默认自然排序的方法介绍
2013/04/27 PHP
php实现使用正则将文本中的网址转换成链接标签
2014/12/03 PHP
CI框架中cookie的操作方法分析
2014/12/12 PHP
php中钩子(hook)的原理与简单应用demo示例
2019/09/03 PHP
通过js脚本复制网页上的一个表格的不错实现方法
2006/12/29 Javascript
js实现的网页颜色代码表全集
2007/07/17 Javascript
Javascript JSQL,SQL无处不在,
2010/05/05 Javascript
js 赋值包含单引号双引号问题的解决方法
2014/02/26 Javascript
javascript中的nextSibling使用陷(da)阱(keng)
2014/05/05 Javascript
javascript实现简单的html5视频播放器
2015/05/06 Javascript
jQuery切换所有复选框选中状态的方法
2015/07/02 Javascript
基于JavaScript如何制作遮罩层对话框
2016/01/26 Javascript
浏览器检测JS代码(兼容目前各大主流浏览器)
2016/02/21 Javascript
JQuery Mobile实现导航栏和页脚
2016/03/09 Javascript
JS中传递参数的几种不同方法比较
2017/01/20 Javascript
关于vue.js v-bind 的一些理解和思考
2017/06/06 Javascript
JS事件绑定的常用方式实例总结
2019/03/02 Javascript
2020淘宝618理想生活列车自动领喵币js脚本的代码
2020/06/02 Javascript
jQuery实现雪花飘落效果
2020/08/02 jQuery
JavaScript数组常用的增删改查与其他属性详解
2020/10/13 Javascript
[02:11]2016国际邀请赛中国区预选赛最美TA采访现场玩家
2016/06/28 DOTA
[06:06]2018DOTA2亚洲邀请赛主赛事第四日战况回顾 全明星赛欢乐上演
2018/04/07 DOTA
解析Python编程中的包结构
2015/10/25 Python
Mac在python3环境下安装virtualwrapper遇到的问题及解决方法
2019/07/09 Python
python3中datetime库,time库以及pandas中的时间函数区别与详解
2020/04/16 Python
HTML5 script元素async、defer异步加载使用介绍
2013/08/23 HTML / CSS
HTML5 embed标签定义和用法详解
2014/05/09 HTML / CSS
大学生创业计划书怎么写
2014/09/15 职场文书
会计试用期自我评价怎么写
2014/09/18 职场文书
社区务虚会发言材料
2014/10/20 职场文书
2014年档案管理员工作总结
2014/12/01 职场文书
出国留学英文自荐信
2015/03/25 职场文书
2015年党建工作目标责任书
2015/05/08 职场文书
微信小程序实现拍照和相册选取图片
2021/05/09 Javascript
ObjectMapper 如何忽略字段大小写
2021/06/29 Java/Android