Mam problem z odczytaniem poprawnej wartości z Providera (Context API). Mój provider wygląda następująco, początkowa wersja była taka, że zmieniałem wartość providera tylko wtedy kiedy komponent zostanie wyrenderowany. Dodałem metode, która po kliknięciu zmienia stan komponentu i myślałem, że wartość providera zostanie również zmieniona. Zmienianie stanu działa (dodałem parę console logów, żeby się upewnić) a wartość, która odczytuje, Consumer jest wartośćią domyślną/nie zmienia się. Dodam, że w moim przypadku Consumer jest parentem i renderuję się dużo wcześniej niż Provider. Wygląda to tak, że Aplikacja się renderuję, zaczytuję domyślna wartość z contextu (0), a przy zmianie wartości ta wartość nie jest przekazywana.

Provider

             export const NavigationWordContext = React.createContext(0);


            <NavigationWordContext.Provider value={this.state.NUM_OF_WORDS}>
                <div id={this.props.id} className={this.props.className} style={style} onClick={this.handleClick}>
                </div>
            </NavigationWordContext.Provider>

Consumer

        <NavigationWordContext.Consumer>
            {value =>
                (<Wrapper>
                    <span id={"complete"} style={completeStyle}>1 / {value}</span>
                </Wrapper>)}
        </NavigationWordContext.Consumer>