Bonjour,
J'ai l'erreur suivante à l'exécution de mon projet en react 16:
Could not find "store" in the context of "Connect(getContext(ScormManager))". Either wrap the root component in a <Provider>, or pass a custom React context provider to <Provider> and the corresponding React context consumer to Connect(getContext(ScormManager)) in connect options.
L'index.js est le suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 const store = createStore(initialState); ReactDOM.render( <Provider store={store}> <ScormManager> <App/> </ScormManager> </Provider>, document.getElementById("root") );
Dans le Provider, j'ai le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 export default class Provider extends Component { getChildContext() { return { store: this.store, }; } render() { return Children.only(this.props.children); } }
Dans ScormManager :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 class ScormManager extends Component { constructor() { super(); ... } render() { return Children.only(this.props.children); } } const mapStateToProps = state => ({ ... }); const mapDispatchToProps = { ... }; const enhanced = compose( connect( mapStateToProps, mapDispatchToProps ), getContext({ store: PropTypes.object }) ); export default enhanced(ScormManager);
Je ne comprends pas ce qui se passe... En cherchant sur le net, je n'ai rien trouvé d'intéressant.
Auriez-vous une idée svp ?
Merci.
Partager