reactjs - 如何将用户输入设置为大写
问题描述
我正在尝试访问https://docs.openaq.org/ api,并且我创建了一个搜索功能,您可以在其中键入应该设置状态的城市名称,然后将其添加到用于数据的 url . 但是,用户输入必须大写,我似乎无法让它工作。
import React, {useState} from 'react';
import Axios from 'axios';
import Button from '../UI/Button';
import SearchedCity from './SearchedCity';
const Search = () => {
const [searchedCity, setSearchedCity] = useState('');
const [city, setCity] = useState();
const [airQuality, setAirQuality] = useState();
const [dateAndTime, setDateAndTime] = useState();
const [latitude, setLatitude] = useState();
const [longitude, setLongitude] = useState();
const [country, setCountry] = useState();
const searchCity = async () => {
try{
const url = `https://api.openaq.org/v1/measurements?country=GB&city=${searchedCity}`;
const res = await Axios.get(url);
console.log(res)
} catch (error) {
alert('Please learn to spell');
}
}
const handleSubmit = (e) => {
e.preventDefault();
searchCity();
console.log({searchedCity})
}
const handleChange = (e) => {
let userInput = e.target.value;
userInput.charAt(0).toUpperCase()
console.log(userInput)
setSearchedCity(userInput)
}
return (
<div>
<form onSubmit={handleSubmit} className="form" >
<label>
<input type="text" placeholder="Search for a UK city" onChange={handleChange} />
<Button handleSubmit={handleSubmit}></Button>
</label>
</form>
<SearchedCity city={city} ></SearchedCity>
</div>
);
};
export default Search;
解决方案
尝试这样的事情
userInput = userInput.charAt(0).toUpperCase() + userInput.slice(1);
它会将第一个字母大写,但保持字符串的其余部分相同。
推荐阅读
- python - 在 Python 中优化列表的运行时
- python - 如何在数据框中的两列中交替值?
- r - 使用源函数加载函数
- bash - 比较两个版本的 zip 文件并找出该 zip 中哪个文件已被修改
- reactjs - 在开发模式下为具有不同静态前缀的反应应用程序提供服务
- hyperlink - AxAcroPDF 不会打开超链接
- c# - Crystal Report 有时无法加载
- windows - 禁用自动注册表更新
- c# - 如何为 [FromQuery] 对象 Asp.Net 核心、ModelBinding 使用 DataMember Name
- python - 从两个字符串生成 Python 列表