我有一个具有不同渲染的父组件,具体取决于我们的步骤:
render(){
..some code to determine step ..
return(
{step == 1 && <Step1/>}
{step == 2 && <Step2/>}
{step == 3 && <Step3/>}
)
}
...
我可以通过这一步,有时可以回去。当我从步骤3返回到2时,不卸载组件步骤3。我希望它是因为我有一些在init上运行的功能,它依赖于步骤2中的配置,所以如果用户在步骤2中更改配置,实际上它不会改变我在步骤3中看到的(它应该)。
我不知道如何卸载我的组件,如果有人知道我将如何高兴知道!提前致谢
答案 0 :(得分:1)
您应该在父组件中创建一个名为&#39; step&#39;并将您的逻辑外包以确定独立方法中的步骤
constructor(props){
super(props);
this.state = {
step: 1
}
}
stepsHandle() {
..some code to determine step ..
}
render(){
const step = this.state.step;
return(
{step == 1 && <Step1/>}
{step == 2 && <Step2/>}
{step == 3 && <Step3/>}
)
}