Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

162
Visualizações
El contador simple no funciona con el contexto React

Estoy aprendiendo los contextos de React y traté de crear un contador simple usando contextos para visualizar el concepto. Desafortunadamente, no funciona perfectamente. El contexto funciona bien, pero no funciona con aritmética simple. Lo que quiero decir con que no funciona es que el valor no aparece después del incremento.

Estoy tratando de llegar a la solución sin usar componentes funcionales.

El código completo se adjunta aquí y es simple.

CounterContext.js

 import React, {Component, createContext} from "react" export const CounterContext = createContext() class CounterContextProvider extends Component { state = { ourNumber: 0 } addOne = ()=> { console.log("addOne is reached") this.state.ourNumber = this.state.ourNumber + 1 } render() { return ( <CounterContext.Provider value={{...this.state, addOne: this.addOne}}> {this.props.children} </CounterContext.Provider> ) } } export default CounterContextProvider;

Aplicación.js

 import React, {Component} from 'react'; import CounterContextProvider from "./CounterContext"; import CounterPage from "./CounterPage"; class App extends Component { render() { return ( <CounterContextProvider> <CounterPage/> </CounterContextProvider> ); } } export default App;

CounterPage.js

 import React, {Component} from 'react'; import {CounterContext} from "./CounterContext"; class CounterPage extends Component { render() { return ( <CounterContext.Consumer> {counterContext=>{ const {ourNumber, addOne} =counterContext return( <> <h1> { ourNumber } </h1> <p> { ourNumber } </p> <button onClick={()=>{addOne()}}>+1</button> </> ) }} </CounterContext.Consumer> ); } } export default CounterPage;
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Para cambiar el estado en el componente de clase, debe usar setState() así:

 addOne = () => { console.log("addOne is reached") this.setState({ourNumber: this.state.ourNumber + 1}) }

https://reactjs.org/docs/react-component.html#setstate

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda