plotly / plotly/react-plotly.js
Chart type scatter3d make onClick loop when calling history.push inside it
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- JavaScript
- Estrellas
- 1.1k
- Forks
- 138
- Merge medio
- 3 d 2 h
- PR fusionados (30 d)
- 4
Descripción
Using Plot inside a Router with type "scatter3d" and trying to use history inside onClick (only if it doesn't unmount the Plot Component) make onClick loop after a first click.
Minimal example:
import Plot from "react-plotly.js";
import { BrowserRouter, Route, useHistory } from "react-router-dom";
function Chart3D() {
const history = useHistory();
return (
<Plot
onClick={() => {
console.log("This will be printed a lot");
history.push("/");
}}
data={[
{
x: [1],
y: [1],
z: [1],
type: "scatter3d",
},
]}
/>
);
}
export default function App() {
return (
<BrowserRouter>
<Route path="/" component={Chart3D} />
</BrowserRouter>
);
}
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Empieza reproduciendo el ejemplo mínimo con react-plotly.js, BrowserRouter, useHistory, un scatter3d Plot y history.push en onClick. Traza por qué el handler se ejecuta repetidamente después del primer clic sin desmontar el componente Plot. Se considera terminado cuando el callback se ejecuta una vez por clic y la navegación sigue funcionando.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- javascript, react
- Área
- data-visualization, frontend
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100