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


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 相关文章推荐
javascript jQuery $.post $.ajax用法
Jul 09 Javascript
asp.net HttpHandler实现图片防盗链
Nov 09 Javascript
jquery 模拟类搜索框自动完成搜索提示功能(改进)
May 24 Javascript
ExtJs使用总结(非常详细)
Mar 22 Javascript
javascript实现信息的显示和隐藏如注册页面
Dec 03 Javascript
调用jQuery滑出效果时闪烁的解决方法
Mar 27 Javascript
JavaScript实现可拖拽的拖动层Div实例
Aug 05 Javascript
javascript中的五种基本数据类型
Aug 26 Javascript
超精准的javascript验证身份证号的具体实现方法
Nov 18 Javascript
JS Select下拉框(支持输入模糊查询)
Feb 04 Javascript
vue实现微信二次分享以及自定义分享的示例
Mar 20 Javascript
详解为element-ui的Select和Cascader添加弹层底部操作按钮
Feb 07 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动态生成静态HTML网页的代码
2010/03/04 PHP
PHP中的traits实现代码复用使用实例
2015/05/13 PHP
PHP实现权限管理功能示例
2017/09/22 PHP
PHP使用星号替代用户名手机和邮箱的实现代码
2018/02/07 PHP
Laravel Validator自定义错误返回提示消息并在前端展示
2019/05/09 PHP
Javascript的一种模块模式
2008/03/22 Javascript
本地对象Array的原型扩展实现代码
2010/12/04 Javascript
js中escape对应的C#解码函数 UrlDecode
2012/12/16 Javascript
JS截取url中问号后面参数的值信息
2014/04/29 Javascript
JavaScript中浅讲ajax图文详解
2016/11/11 Javascript
Angular2学习教程之TemplateRef和ViewContainerRef详解
2017/05/25 Javascript
详解vue 模版组件的三种用法
2017/07/21 Javascript
vue watch监听对象及对应值的变化详解
2018/02/24 Javascript
原生JS实现列表子元素顺序反转的方法分析
2018/07/02 Javascript
JavaScript&quot;模拟事件&quot;的注意要点详解
2019/02/13 Javascript
微信小程序实现搜索指定景点周边美食、酒店
2019/05/18 Javascript
layui递归实现动态左侧菜单
2019/07/26 Javascript
javascript实现抢购倒计时程序
2019/08/26 Javascript
jQuery实现全选按钮
2021/01/01 jQuery
Python的Flask框架及Nginx实现静态文件访问限制功能
2016/06/27 Python
Python使用中文正则表达式匹配指定中文字符串的方法示例
2017/01/20 Python
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
python SVM 线性分类模型的实现
2019/07/19 Python
python批量读取文件名并写入txt文件中
2020/09/05 Python
Python开发之pip安装及使用方法详解
2020/02/21 Python
python实现AdaBoost算法的示例
2020/10/03 Python
CSS3弹性盒模型开发笔记(一)
2016/04/26 HTML / CSS
Kendra Scott官网:美国领先的时尚配饰品牌
2020/10/22 全球购物
实习鉴定评语
2014/01/19 职场文书
2014年关于两会精神的心得体会
2014/03/17 职场文书
小学秋季运动会报道稿
2014/09/30 职场文书
信息合作协议书
2014/10/09 职场文书
2014年基层党建工作总结
2014/11/11 职场文书
任命书标准格式
2015/03/02 职场文书
师范生见习总结范文
2015/06/23 职场文书
教师听课学习心得体会
2016/01/15 职场文书