2016-08-05 25 views

答えて

1

propsアレイを手作業で突然変異させているため動作しません。一般的には、小道具は決して変更しないでください。

あなたが本当にこれをしたい場合は、あなたがcomponentDidMount内SETSTATEを使用することができ、その後、あなたの子コンポーネントは、そのを通じてレンダリング:

class Parent extends React.Component { 
    constructor(props) { 
    super(props); 

    this.state = { 
     childComponent: null 
    } 
    } 

    componentDidMount() { 
    this.setState({ childComponent: <div>Hello</div> }); 
    } 

    render() { 
    return (
     <div> 
     {this.state.childComponent} 
     </div> 
    ) 
    } 
} 

しかし、あなたがしようとしているものは何でもへのよりよい解決策があるかもしれません行う。私は、親がマウントされた後にのみ物をレンダリングしたいと思う多くの状況を想像することはできません。

-1
を働かなかったのはなぜ親は 2を搭載した後

class Parent extends React.Component { 

    componentDidMount() { 
    this.props.children.push(<NewChildComponent/>) 
    } 

    render() { 
    return (
     <div> 
     {this.props.children} 
     </div> 
    ) 
    } 

} 

誰かが子要素を追加する方法を私に 1を伝えることができます

あなたはcomponentWillMountを試してみてください。これで問題が解決されると思います。

+0

ええ、私はcomponentWillMountとcomponentWillRecievePropsを試しました。しかし、どちらもうまくいった。 – sdw

関連する問題