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


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高级程序设计
Dec 29 Javascript
JS面向对象编程 for Cookie
Sep 19 Javascript
Jquery实现显示和隐藏的4种简单方式
Aug 28 Javascript
AngularJS基础 ng-selected 指令简单示例
Aug 03 Javascript
jQuery多文件异步上传带进度条实例代码
Aug 16 Javascript
js变量提升深入理解
Sep 16 Javascript
javascript的document中的动态添加标签实现方法
Oct 24 Javascript
将鼠标焦点定位到文本框最后(代码分享)
Jan 11 Javascript
一个简易时钟效果js实现代码
Mar 25 Javascript
vue2.0使用swiper组件实现轮播的示例代码
Mar 03 Javascript
JavaScript实现shuffle数组洗牌操作示例
Jan 03 Javascript
关于JavaScript 中 if包含逗号表达式
Nov 27 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
声音就能俘获人心,蕾姆,是哪个漂亮小姐姐配音呢?
2020/03/03 日漫
PHP实现网上点歌(二)
2006/10/09 PHP
php中批量修改文件后缀名的函数代码
2011/10/23 PHP
解析PHP获取当前网址及域名的实现代码
2013/06/23 PHP
php初始化对象和析构函数的简单实例
2014/03/11 PHP
PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法
2015/03/07 PHP
用php实现分页效果的示例代码
2020/12/10 PHP
网页开发中的容易忽略的问题 javascript HTML中的table
2009/04/15 Javascript
js如何获取file控件的完整路径具体实现代码
2013/05/15 Javascript
js综合应用实例简单的表格统计
2013/09/03 Javascript
js整数字符串转换为金额类型数据(示例代码)
2013/12/26 Javascript
Extjs grid panel自带滚动条失效的解决方法
2014/09/11 Javascript
使用jquery操作session方法分享
2015/01/22 Javascript
jQuery实现鼠标跟随提示层效果代码(可显示文本,Div,Table,Html等)
2016/04/18 Javascript
SelectPage v2.4 发布新增纯下拉列表和关闭分页功能
2017/09/07 Javascript
Nodejs模块的调用操作实例分析
2018/12/25 NodeJs
VUE脚手架具体使用方法
2019/05/20 Javascript
vue el-tree 默认展开第一个节点的实现代码
2020/05/15 Javascript
vue中解决拖拽改变存在iframe的div大小时卡顿问题
2020/07/22 Javascript
Python中还原JavaScript的escape函数编码后字符串的方法
2014/08/22 Python
跟老齐学Python之编写类之二方法
2014/10/11 Python
基于python中staticmethod和classmethod的区别(详解)
2017/10/24 Python
Python可变参数*args和**kwargs用法实例小结
2018/04/27 Python
Python Collatz序列实现过程解析
2019/10/12 Python
python文件读写代码实例
2019/10/21 Python
pymongo insert_many 批量插入的实例
2020/12/05 Python
python爬虫爬取某网站视频的示例代码
2021/02/20 Python
Scrapy实现模拟登录的示例代码
2021/02/21 Python
linux面试题参考答案(5)
2014/09/01 面试题
公司门卫管理制度
2014/02/01 职场文书
幼儿园课题实施方案
2014/05/14 职场文书
老员工辞职信范文
2015/05/12 职场文书
学困生转化工作总结
2015/08/13 职场文书
高中班长竞选稿
2015/11/20 职场文书
导游词之宁夏贺兰山岩画
2019/11/08 职场文书
详解Python中__new__方法的作用
2022/03/31 Python