【发布时间】:2021-09-10 08:48:08
【问题描述】:
作为问题状态,我要做的是将子值从子传递给父。我想在我的父函数中调用子变量。
父代码
function App() {
let [value, setVal] = useState(null);
...
const onLayoutChange = (layout) => {
console.log(value);
if (value != null) {
value.resize();
}
// chartInstance.resize();
};
return (
<ResponsiveGridLayout
layouts={layout}
onLayoutChange={() => onLayoutChange(layout)}
>
<div key="1">
<Card style={styles} val={setVal} />
</div>
</ResponsiveGridLayout>
);
}
#1 子代码
export default function SimpleCard(props) {
return (
<Card style={props.style.main}>
<CardContent>
<NewvsReturnVisitors value={props.val} />
</CardContent>
</Card>
);
}
#2 子代码
const Newvsresturnvisitors = (props) => {
...
let [val, setVal] = useState(null);
let chartInstance = null;
props.value(val);
function renderChart() {
const renderInstance = echarts.getInstanceByDom(chart.current);
if (renderInstance) {
chartInstance = renderInstance;
setVal(chartInstance);
} else {
chartInstance = echarts.init(chart.current, null, {
width: 500,
height: 300
});
setVal(chartInstance);
// chartInstance.resize();
}
chartInstance.setOption(option);
}
...
}
export default Newvsresturnvisitors;
我不确定这是否可能,任何建议都非常感谢。
这是我的密码箱的link
【问题讨论】: