Obtengo el valor de selección seleccionado a través de onchange, lo almaceno en el estado y lo guardo en reaccionar y lo uso más donde necesito estos datos y todo funciona bien. Después de recargar, el valor seleccionado se convierte en el valor predeterminado. No entiendo cómo puedo almacenar la selección en almacenamiento local.
class Currency extends Component { constructor(props){ super(props); this.state = { currencies: ["$ USD", "€ EURO"], } } componentDidMount = async () =>{ const response = await client.query({ query: Currency_Query }) this.setState({ currencies:response.data.currencies }) } render() { return( <div> <div className={s.select}> <select > {this.state.currencies.map((currencies) =>( <option> <div className={s.option}> {currencies.symbol} {currencies.label} </div> </option> ) ) } </select> </div> </div> )} } } export default Currency;En app.js, a través de onChange, obtengo los valores, los guardo en estado y luego los guardo en localStorage
handleChange = (e) => { this.setState({ selectValue: e.target.value }) } componentDidMount(){ this.Data = JSON.parse(localStorage.getItem('data')); if(localStorage.getItem('data')){ this.setState({ selectValue: this.Data.selectValue, }) } else { this.setState({ selectValue: "$ USD", }) } } componentWillUpdate(nextProps, nextState){ localStorage.setItem('data', JSON.stringify(nextState)) }