reactjs - 如何让日期在我的应用程序上正常工作?
问题描述
我正在创建一个天气应用程序,并希望从 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
}
解决方案
使用反引号
return `${day} ${date} ${month} ${year}`
推荐阅读
- design-patterns - GoF Flyweight 设计模式有哪些缺点
- javascript - 有没有办法将 json 对象转换为 json l 文件
- javascript - 我该如何修改我的
- c# - 在 .Net Framework 项目中使用带有部分视图的 Razor 类库
- flutter - 在 InitState 未处理异常中显示对话框:查找已停用小部件的祖先是不安全的
- unit-testing - 笑话:监视正在测试的模块中的其他功能
- javascript - Rails respond_to 抛出 ActionController::UnknownFormat
- html - 如何在 wordpress i-max 主题中删除顶部栏上的文本(删除蓝色)
- python - 使用 WSGI 部署的 Python / Dajngo App 无法生成 HTTP 响应
- regex - 打印格式有些不一致的文本文件的特定“列”