Je tente de passer une fonction onClick décorée renvoyée par la fonction useAccordionToggle de react-bootstrap dans un composant afin de pouvoir masquer l'Accordion suite à une interaction sur ce composant. Quelque chose ne fonctionne pas et la fonction décorée créée n'est plus en mesure d'accéder correctement aux contextes que react-bootstrap met en place (elle semble coincer sur SelectableContext ici). Je suis assez nouveau en react, et je viens juste de découvrir les contextes en cherchant pourquoi cela ne fonctionne pas, je ne serais pas surpris si c'est là que vient ma confusion. Il semble ne pas obtenir le bon contexte au moment de la construction de la méthode.
J'ai inclus un petit test Cliquez ici pour voir un exemple:
import React from "react";
import ReactDOM from "react-dom";
import { Button, Accordion, Card, useAccordionToggle } from "react-bootstrap";
import "bootstrap/dist/css/bootstrap.min.css";
import "./styles.css";
const InternalComponent = props => {
console.log(props.onClick);
return (
props.onClick()}>ici pour voir
);
};
function App() {
const x = useAccordionToggle(0, () => {
/**/
});
return (
<>
créer un nouveau groupe
);
}
const rootElement = document.getElementById("root");
ReactDOM.render(, rootElement);