给出微信小程序开发一个简单的天气预报页面,显示当前所在城市的实时天气情况(用和风天气)的代码
时间: 2024-10-28 07:10:32 浏览: 20
微信小程序精品demo:和风天气:天气API,设置城市;适用1122(源代码+截图)
5星 · 资源好评率100%
为了在微信小程序中开发一个简单的天气预报页面,你需要先注册并获取到和风天气API的密钥。然后按照以下步骤编写代码:
1. 首先,在`app.json`文件中配置网络请求权限:
```json
{
"permission": {
"scope.userInfo": {
"desc": "用于获取用户信息,包括头像、昵称等"
}
},
"window": {
"backgroundTextStyle": "light",
"navigationBarTitleText": "天气预报",
"navigationBarBackgroundColor": "#fff"
}
}
```
2. 在`index.js`中引入所需的库,并设置默认城市:
```javascript
Page({
data: {
weatherInfo: {},
cityCode: '你的和风天气API城市码', // 这里需要替换为你获取的城市码
},
})
```
3. 在`index.wxml`中创建页面结构:
```html
<view>
<button bindtap="getWeather">查询天气</button>
<text id="weather-text">{{ weatherInfo.temperature }}°C</text>
</view>
```
4. 编写`index.wxss`以美化样式:
```css
button {
margin-top: 20rpx;
}
```
5. 实现`getWeather`函数,发送请求并解析数据:
```javascript
methods: {
async getWeather() {
const wx = require('wx');
const res = await wx.request({
url: `https://free-api.heweather.com/v5/weather?city=${this.data.cityCode}&key=你的和风天气API密钥`,
method: 'GET',
data: {},
header: {
'content-type': 'application/json'
},
success(res) {
this.setData({
weatherInfo: res.data HeWeather5.current,
});
},
fail(error) {
console.error('获取天气失败', error);
}
});
},
},
onLoad() {
// 获取用户地理位置,注意需要添加权限
wx.getSetting({
success(res) => {
if (res.authSetting['scope.userInfo']) {
wx.getUserInfo({
success: userRes => {
// 设置默认城市为用户的所在地
this.setData({
cityCode: userRes.userInfo.province + userRes.userInfo.city + userRes.userInfo.district || '北京',
});
this.getWeather();
}
});
} else {
wx.authorize({
scope: 'scope.userInfo',
success() {
this.getWeather();
}
});
}
}
});
}
```
6. 别忘了替换`url`中的`城市码`和`API密钥`。
现在你应该可以运行小程序,点击“查询天气”按钮,会展示当前城市的实时天气温度。请注意,以上代码仅作为示例,实际项目中应处理异常和错误提示,并优化用户体验。
阅读全文