小程序调用百度api天气接口后续

作者: 前端来入坑 | 来源:发表于2018-10-14 12:31 被阅读78次

没看前面文章的朋友可以先看这篇小程序调用百度api天气接口https://www.jianshu.com/p/efce23cd4ef7

<!--在weather.html修改成这样,其实就只是加了一个跳转按钮-->
<view class="weather"> 
  <text>{{weatherData}}</text>
  <navigator style='width:400rpx;display:inline-block;margin-top:30rpx;' url="../weekWeather/weekWeather?futureWeather={{futureWeather}}"> 
    <button class="weui-btn" style='color:#666;width:400rpx;'>
      未来3天天气
    </button>
  </navigator>
</view>

js在前面的基础上加了个futureWeather

var bmap = require('../../libs/bmap-wx.min.js');

Page({
  data: {
    weatherData: '',
    futureWeather: ''
  },
  onLoad: function () {
    var that = this;
    // 新建百度地图对象 
    var BMap = new bmap.BMapWX({
      ak: 'CKF2o6SbXP1vVFDNdKURwujq4ixaQElm'
    });
    var fail = function (data) {
      console.log(data)
    };
    var success = function (data) {
      var weatherData = data.currentWeather[0];
      console.log(weatherData);
      var futureWeather = JSON.stringify(data.originalData.results[0].weather_data);
      console.log(futureWeather);  
      weatherData = '城市:' + weatherData.currentCity  +'\n'+ 'PM2.5:' + weatherData.pm25 + '\n' + '日期:' + weatherData.date + '\n' + '温度:' + weatherData.temperature + '\n' + '天气:' + weatherData.weatherDesc + '\n' + '风力:' + weatherData.wind + '\n';
      that.setData({
        weatherData: weatherData,
        futureWeather: futureWeather 
      });
    }
    // 发起weather请求 
    BMap.weather({
      fail: fail,
      success: success
    });
  }
})

展示页面效果


image.png

多了个未来三天天气,小伙伴们应该明白了,刚刚的futureWeather 就是未来三天天气的数据,接下来我们在另一个页面把未来三天天气展示出来
wxml

<!--wxml-->
<scroll-view scroll-y style="height: 100vh;">
  <view class='bg'>
    <block wx:for="{{futureWeather}}" wx:key="{{index}}">
      <view class='weatherList'>
          <view class='date'>{{item.date}}</view>
          <view class='image'>
            <image class='day' src='{{item.dayPictureUrl}}'></image>
            <image class='night' src='{{item.nightPictureUrl}}'></image>
          </view>
          <view class='message'>
            <view class='temperature'>{{item.temperature}}</view>
            <view class='weather'>{{item.weather}}</view>
            <view class='wind'>{{item.wind}}</view>
          </view>
      </view> 
    </block>
  </view>
</scroll-view>

js

//js
Page({
  data: {
    futureWeather:[]
  },
  onLoad: function (options) {
    let futureWeather = JSON.parse(options.futureWeather);
    this.setData({
      futureWeather: futureWeather
    });
    console.log(futureWeather);
  }
})

json里面不能有注释

{
  "navigationBarTitleText": "未来三天天气"
}

把css也贴出来吧

//css
.bg{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.weatherList{
  width: 90%;
  margin: 10px 0;
  padding: 20px 0;
  box-shadow: 0px 0px 30px rgba(0,0,0,.3);
  border-radius: 8px;
  text-align: center;
}
.weatherList .date{
  
}
.weatherList .image image{
  width: 50px;
  height: 40px;
  margin-top: 10px;
  border-radius: 10px;
}
.weatherList .image .day{
  margin-left: -10px;
}
.weatherList .image .night{
  margin-left: 10px;
}
.weatherList .message{
  margin-top: 10px;
  display: flex;
  justify-content: center;
}
.weatherList .message .temperature{
  
}
.weatherList .message .weather{
  margin-left: 10px;
}
.weatherList .message .wind{
  margin-left: 10px;
}

展示页面


weather.gif

如果还不够明白,那就来真机体验一下吧


Allan生活服务.jpg

相关文章

  • 小程序调用百度api天气接口后续

    没看前面文章的朋友可以先看这篇小程序调用百度api天气接口https://www.jianshu.com/p/ef...

  • 小程序调用百度api天气接口

    demo下载地址 https://github.com/baidumapapi/wxapp-jsapi 百度接...

  • 小程序调用图片接口API并居中显示

    写完调用天气接口的demo之后,小程序调用天气接口并且渲染在页面https://www.jianshu.com/p...

  • 小程序api接口调用尝试

    在这里我通过百度地图的api来举例子。 这里的请求是通过wx.request来实现的,我们先来看一下官方文档是怎么...

  • 8.25兄弟会

    js调用百度地图api实现定位 百度地图的API,接口很丰富,实现定位功能 // 百度地图API功能 varmap...

  • 合理的使用Http Cache

    啰嗦一下 正在做一个关于天气的小项目,使用的是百度的公共API接口(接口调用限制6000/次),其实就是和风天气(...

  • 微信小程序如何调用后台接口

    本课程讲解了微信小程序如何调用线上API中心接口,主要使用了wx.request去和API中心交互,API中心提供...

  • Flask 2.2.x 将结果集数据序列化出现TypeError

    前言 最近学习开发小程序,需要个后端提供API,于是选择了小而美的flask。 原想调用API接口,从数据库返回的...

  • 接口测试概述

    一.什么是接口 1.API 2.软件接口、硬件接口 3.很多程序提供API供大众调用 二 接口测试 1.什么是接口...

  • 39

    今天调用了百度地图的小程序api,又看了几个小程序demo,然后看到了mpvue明天打算试一试

网友评论

    本文标题:小程序调用百度api天气接口后续

    本文链接:https://www.haomeiwen.com/subject/enxaaftx.html