Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果任何基于父类的组件收到新的道具,但没有设置状态…它将调用componentDidMount()_Javascript_Reactjs_React Lifecycle - Fatal编程技术网

Javascript 如果任何基于父类的组件收到新的道具,但没有设置状态…它将调用componentDidMount()

Javascript 如果任何基于父类的组件收到新的道具,但没有设置状态…它将调用componentDidMount(),javascript,reactjs,react-lifecycle,Javascript,Reactjs,React Lifecycle,我最近3个月在学习react,但没有弄清楚1件事。我想知道,如果我的顶级应用程序组件获得了新道具,但没有调用任何设置状态…它会调用组件确实挂载吗?或者它不会调用任何组件确实挂载。如果组件已经挂载,它不会再次调用组件确实挂载挂载,没有。但它(目前)将调用旧的,并将调用和 尝试这些东西很容易。例如: 类父级扩展React.Component{ 建造师(道具){ 超级(道具); log(“父-构造函数”); } componentDidMount(){ log(“父组件didmount”); } 不

我最近3个月在学习react,但没有弄清楚1件事。我想知道,如果我的顶级应用程序组件获得了新道具,但没有调用任何设置状态…它会调用组件确实挂载吗?或者它不会调用任何组件确实挂载。

如果组件已经挂载,它不会再次调用
组件确实挂载挂载,没有。但它(目前)将调用旧的,并将调用和

尝试这些东西很容易。例如:

类父级扩展React.Component{
建造师(道具){
超级(道具);
log(“父-构造函数”);
}
componentDidMount(){
log(“父组件didmount”);
}
不安全组件DidReceiveProps(){
log(“父-不安全的组件didReceiveProps”);
}
componentDidUpdate(){
log(“父-组件更新”);
}
render(){
console.log(“父-呈现”);
const{value}=this.props;
返回;
}
}
子类扩展了React.Component{
建造师(道具){
超级(道具);
log(“子构造函数”);
}
componentDidMount(){
log(“子组件didmount”);
}
不安全组件DidReceiveProps(){
log(“子-不安全的组件didReceiveProps”);
}
componentDidUpdate(){
log(“子组件diddupdate”);
}
render(){
console.log(“子渲染”);
const{value}=this.props;
返回值={value};
}
}
类示例扩展了React.Component{
建造师(道具){
超级(道具);
此.state={
柜台:0
};
}
componentDidMount(){
设置超时(()=>{
this.timer=setInterval(()=>{
this.setState(({counter})=>{
++计数器;
如果(计数器==2){
clearInterval(这个计时器);
}
返回{counter};
});
}, 500);
}, 1000);
}
render(){
const{counter}=this.state;
返回;
}
}
render(,document.getElementById(“根”))

如果组件已装入,则不会再次调用
组件didmount
。但它(目前)将调用旧的,并将调用and

尝试这些东西很容易。例如:

类父级扩展React.Component{
建造师(道具){
超级(道具);
log(“父-构造函数”);
}
componentDidMount(){
log(“父组件didmount”);
}
不安全组件DidReceiveProps(){
log(“父-不安全的组件didReceiveProps”);
}
componentDidUpdate(){
log(“父-组件更新”);
}
render(){
console.log(“父-呈现”);
const{value}=this.props;
返回;
}
}
子类扩展了React.Component{
建造师(道具){
超级(道具);
log(“子构造函数”);
}
componentDidMount(){
log(“子组件didmount”);
}
不安全组件DidReceiveProps(){
log(“子-不安全的组件didReceiveProps”);
}
componentDidUpdate(){
log(“子组件diddupdate”);
}
render(){
console.log(“子渲染”);
const{value}=this.props;
返回值={value};
}
}
类示例扩展了React.Component{
建造师(道具){
超级(道具);
此.state={
柜台:0
};
}
componentDidMount(){
设置超时(()=>{
this.timer=setInterval(()=>{
this.setState(({counter})=>{
++计数器;
如果(计数器==2){
clearInterval(这个计时器);
}
返回{counter};
});
}, 500);
}, 1000);
}
render(){
const{counter}=this.state;
返回;
}
}
render(,document.getElementById(“根”))


Hi Asaduzzaman Himel,你的问题很难抓住重点。Stackoverflow不是一种亚reddit或论坛。我们正在尝试发布有价值的问题,这些问题可以帮助成千上万的其他人。如果你在语言方面有问题,我们可以尽力帮助你。我应该删除这个问题吗?@MichaelCzechowski-这个问题对我来说似乎很清楚。(Asaduzzaman Himel-如果你正确地写下方法的名称,
component didmount
而不是“component Did Mount”,等等)Hi Asaduzzaman Himel,你的问题真的很难理解。Stackoverflow不是一种亚reddit或论坛。我们正在尝试发布有价值的问题,这些问题可以帮助成千上万的其他人。如果你在语言方面有问题,我们可以尽力帮助你。我应该删除这个问题吗?@MichaelCzechowski-这个问题对我来说似乎很清楚。(Asaduzzaman Himel-如果您正确地编写方法的名称,例如,
componentDidMount
而不是“component didmount”,等等,这会有所帮助。)