首页 > 解决方案 > 如何让日期在我的应用程序上正常工作?

问题描述

我正在创建一个天气应用程序,并希望从 api 中提取日期、日期、月份和年份,以便在我搜索城市时显示,当我将代码放在下面时,它只显示为 ${day} ${ date} ${month} ${year},发生这种情况是否有原因是它没有正确地从 api 获取数据?

应用程序.js

Import React, { useState } from 'react';

import { fetchWeather } from './api/fetchWeather';
import './App.css';

const App = () => {
const [query, setQuery] = useState('');
const [weather, setWeather] = useState({});

const dateBuilder = (d) => {
    let months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", 
"October", "November", "December"]
 let days = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];

 let day = days[d.getDay()];
 let date = d.getDate();
 let month = months[d.getMonth()];
 let year = d.getFullYear();

 return '${day} ${date} ${month} ${year}'


}

const search = async (e) => {
    if(e.key === 'Enter') {
        const data = await fetchWeather(query)
        

        setWeather(data);
        setQuery('');

         
    }
}       

fetchWeather.js

import axios from 'axios';

const URL = 'https://api.openweathermap.org/data/2.5/weather';
const API_KEY = '5a68c76873f7ccb04c1ef6f924b37e32';


export const fetchWeather = async (query) => {
const { data } = await axios.get(URL, {
    params: {

        q: query, 
        units: 'metric',
        APPID: API_KEY,
    }
});

return data
 }

标签: reactjsapidatetimeconstants

解决方案


使用反引号

return `${day} ${date} ${month} ${year}`

推荐阅读