/** @format */ import _ from 'lodash'; import moment from 'moment'; import React, { useEffect, useState } from 'react'; import { Container } from './styled'; interface TemperatureProps { size?: Record; city: Record; [key: string]: any; } const Temperature = (props: TemperatureProps) => { const { size, city = '杭州市', img, isShowTemperature = false, isShowHumidity = false, isShowLogo = true, } = props; const [temperature, setTemperature] = useState(); const [humidity, setHumidity] = useState(); const [time, setTime] = useState(moment().format('HH:mm:ss')); const defaultImg = 'https://gt-toolbox.oss-cn-beijing.aliyuncs.com/gt-toolbox/952f4df1-1330-425e-9b23-33c5fadfb3a5.png'; const timerBase = { color: '#fff', fontSize: 18, lineHeight: 1, fontFamily: 'DINAlternate-Bold', }; const dateBase = { color: '#fff', fontSize: 12, lineHeight: 1, fontFamily: 'Arial', }; const labelBase = { fontSize: 12, color: '#fff', lineHeight: 1, marginBottom: 2, fontFamily: 'DINAlternate-Bold', }; const valueBase = { fontSize: 18, color: '#fff', lineHeight: 1, fontFamily: 'Microsoft Yahei', }; useEffect(() => { fetch( `https://restapi.amap.com/v3/weather/weatherInfo?key=abb419c77c3a2e1292893441fde0ae87&extensions=base&city=${city}`, ) .then(res => res.json()) .then(res => { if (res && res.lives && res.lives[0]) { setTemperature(res.lives[0].temperature); setHumidity(res.lives[0].humidity); } }); }, [city]); useEffect(() => { const timer = setInterval(() => { setTime(moment().format('HH:mm:ss')); }, 1000); return () => clearInterval(timer); }, []); return ( {isShowLogo ? (
) : null} {isShowHumidity ? (

湿度

{humidity}%

) : null} {isShowTemperature ? (
{temperature}℃
) : null}

{time}

{moment().format('YYYY.MM.DD')}

); }; export default Temperature;