天气模块
天气模块为 Modular Dashboard 提供实时天气信息展示功能,支持多城市、详细预报等多种功能。
🎯 功能特性
实时天气
- 当前天气:显示当前天气状况
- 温度显示:支持摄氏度和华氏度
- 天气图标:直观的天气图标展示
- 体感温度:显示体感温度
详细信息
- 湿度信息:当前湿度百分比
- 风速风向:风速和风向信息
- 气压数据:大气压强数据
- 能见度:当前能见度信息
多日预报
- 3日预报:未来3天的天气预报
- 7日预报:未来7天的天气预报
- 最高最低温:每日温度范围
- 降水概率:降水概率预报
⚙️ 配置选项
基本配置
{
"id": "weather",
"enabled": true,
"config": {
"city": "北京",
"units": "metric",
"language": "zh",
"refresh_interval": 1800,
"show_forecast": true,
"forecast_days": 3,
"show_details": true
}
}
配置参数详解
基本设置
city
- 城市名称units
- 单位制 (metric/imperial)language
- 语言设置refresh_interval
- 刷新间隔(秒)
显示选项
show_forecast
- 是否显示预报forecast_days
- 预报天数show_details
- 是否显示详细信息
📱 界面展示
主视图
在仪表盘卡片中显示:
- 城市名称
- 当前温度
- 天气图标
- 简短描述
详细视图
在独立页面中显示:
- 完整天气信息
- 详细数据
- 多日预报
- 天气图表
🔧 高级配置
多城市配置
{
"config": {
"cities": [
{"name": "北京", "enabled": true},
{"name": "上海", "enabled": true},
{"name": "广州", "enabled": false}
],
"default_city": "北京"
}
}
详细信息配置
{
"config": {
"show_details": true,
"details_config": {
"humidity": true,
"wind_speed": true,
"pressure": true,
"visibility": true,
"uv_index": true
}
}
}
预报配置
{
"config": {
"show_forecast": true,
"forecast_days": 7,
"forecast_config": {
"show_high_low": true,
"show_precipitation": true,
"show_wind": true,
"show_humidity": true
}
}
}
🎨 样式定制
主题适配
天气模块自动适配当前主题:
- 亮色主题:清晰的天气界面
- 暗色主题:护眼的暗色天气显示
响应式设计
- 桌面端:完整信息显示
- 移动端:精简信息,核心数据优先
- 平板端:平衡的布局设计
⚡ 性能优化
缓存策略
- 智能缓存:避免重复请求
- 增量更新:只获取新数据
- 内存管理:自动清理过期缓存
网络优化
- 请求合并:减少网络请求次数
- 错误重试:自动重试失败的请求
- 超时控制:防止长时间等待
🛠️ 故障排除
常见问题
城市找不到
原因:城市名称错误或拼写问题 解决:
- 检查城市名称拼写
- 使用城市 ID 替代名称
- 尝试附近大城市
API 限制
原因:超过天气 API 限制 解决:
- 增加
refresh_interval
- 减少请求频率
- 使用认证 token
数据不准确
原因:天气源数据问题 解决:
- 检查天气源配置
- 验证 API 密钥
- 尝试其他天气源
API 配置
{
"config": {
"api_key": "your_weather_api_key",
"api_provider": "openweathermap",
"timeout": 30
}
}
🔐 安全考虑
API 密钥管理
- 使用环境变量存储 API 密钥
- 定期轮换 API 密钥
- 监控 API 使用情况
数据隐私
- 不存储用户位置信息
- 数据本地处理
- 最小化数据收集
🔄 更新日志
版本 1.0.0
- ✨ 初始版本发布
- 🎨 支持基本天气显示
- 🌍 支持多城市
- ⚡ 性能优化和缓存机制
计划中的功能
- 天气预警 - 极端天气预警
- 空气质量 - 空气质量指数
- 雷达图 - 天气雷达图
- 历史数据 - 历史天气数据
天气模块为用户提供了便捷的天气信息获取功能,是日常生活的重要工具。