In diesem Artikel wird erläutert, wie Sie mit dem WeChat-Applet die Funktion Wettervorhersage entwickeln.
{ "pages":[ "pages/index/index" ], "window":{ "backgroundTextStyle":"light", "navigationBarBackgroundColor": "#fff", "navigationBarTitleText": "天气预报", "navigationBarTextStyle":"black" }, "networkTimeout": { "request": 10000 }, "debug": true}
Debug-Modus.
3. Miniprogramm-Logikschicht Verwenden Sie zunächst die Schnittstelle „Get User's Current Geographic Location“ in common.js, um die Koordinatenadresse des Benutzers abzurufen, und wählen Sie gcj02 als aus Koordinatentyp. //Den aktuellen Standort abrufen
Koordinaten
function getLocation(callback) { wx.getLocation({ type: 'gcj02', success: function(res) { callback(true, res.latitude, res.longitude); }, fail: function() { callback(false); } }) }
zurückgegeben. Übergeben Sie bei einem Fehler „false“ an die Rückruffunktion. Nachdem Sie die Koordinaten erhalten haben, verwenden Sie die Baidu-Schnittstelle , um
das Wetter abzufragen. Der entsprechende Abfragecode wird unten angezeigt.
function getWeather(latitude, longitude, callback) { var ak = "";//换成自己的ak,不要用方倍工作室的 var url = "https://api.map.baidu.com/telematics/v3/weather?location=" + longitude + "," + latitude + "&output=json&ak=" + ak; wx.request({ url: url, success: function(res){ console.log(res); callback(res.data); } }); }
function loadWeatherData(callback) { getLocation(function(success, latitude, longitude){ getWeather(latitude, longitude, function(weatherData){ callback(weatherData); }); }); }
module.exports = { loadWeatherData: loadWeatherData }
, um den öffentlichen Code einzuführen. Der Code wird unten angezeigt.
In der Seitenfunktion der Seite werden Daten als Initialisierungsdaten des Wetters definiert, die in Form von JSON von der Logikschicht an die Rendering-Schicht übertragen werden. Verwenden Sie in der onLoad-Methode gemeinsam die Methode „loadWeatherData“, um Wetterdaten abzurufen und auf die Benutzeroberfläche festzulegen, und verwenden Sie die Methode „setData“, um die erhaltenen Daten auf der Datenschicht festzulegen.//index.jsvar common = require('common.js') Page({ data: { weather: {} }, onLoad: function () { var that = this; common.loadWeatherData(function(data){ that.setData({ weather: data }); }); } })
<!--index.wxml--><view class="container"> <view class="header"> <view class="title">{{weather.results[0].currentCity}}</view> <view class="desc">{{weather.date}}</view> </view> <view class="menu-list"> <view class="menu-item" wx:for="{{weather.results[0].weather_data}}" wx:key="*this"> <view class="menu-item-main"> <text class="menu-item-name">{{item.date}} {{item.weather}} {{item.wind}} {{item.temperature}}</text> <image class="menu-item-arrow" src="{{item.dayPictureUrl}}"></image> </view> </view> </view></view>
.header { padding: 30rpx; line-height: 1; }.title { font-size: 52rpx; }.desc { margin-top: 10rpx; color: #888888; font-size: 28rpx; }.menu-list { display: flex; flex-direction: column; background-color: #fbf9fe; margin-top: 10rpx; }.menu-item { color: #000000; display: flex; background-color: #fff; margin: 10rpx 30rpx; flex-direction: column; }.menu-item-main { display: flex; padding: 40rpx; border-radius: 10rpx; align-items: center; font-size: 32rpx; justify-content: space-between; }.menu-item-arrow { width: 96rpx; height: 96rpx; transition: 400ms; }
[Verwandte Empfehlungen]
1.
WeChat-Applet vollständiger Quellcode-Download Demo des WeChat-Miniprogramms: Guoku und neue VersionDas obige ist der detaillierte Inhalt vonWettervorhersage für die Miniprogrammentwicklung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!