在开关机箱内设置状态后无法访问我的状态



我需要一些帮助。在setState之后,我无法访问我的状态,这两种状态都在一个case和一个switch case中。我知道这对有经验的人来说很容易,但我是js、reactjs和reacthook的初学者。我花了几个小时的时间来使用钩子,这使得调用组件变得更容易,但现在我遇到了这个问题。提前感谢!^^

let ChartComponent = (props) => {
const [chart, setChart] = useState(null)
const [chartData, setChartData] = useState({})
useEffect(() => {
switch (props.type) {
case 'bubble':
setChartData({
labels: props.labels,
datasets: [
{
label: props.title,
fill: false,
. . .
data: props.data
}
]
})
setChart(<Bubble . . . />)
break
case 'scatter':
setChartData({ . . . })
setChart( <Scatter . . . /> )
break
default:
setChartData({ . . . })
setChart( . . . )
break
}
}, []);
return (chart)
}
export default ChartComponent

我想你可能正在寻找类似的东西

let ChartComponent = (props) => {
switch (props.type) {
case "bubble": {
const chartData = {
labels: props.labels,
datasets: [
{
label: props.title,
fill: false,
data: props.data,
/* ... */
},
],
};
return <Bubble {...chartData} />;
}
case "scatter": {
const chartData = {
/* ... */
};
return <Scatter {...chartData} />;
}
default: {
return /* ... */;
}
}
};
export default ChartComponent;

最新更新