[英]React Native - setState to other component
我想在启动Home
时更改Header
某些布局。 所以我决定在Home
componentWillMount
时调用setState
。 如何将State设置为不同js文件中的其他组件。
Header.js
class Header extends React.Component {
constructor(props) {
super(props);
this.state = { type: '' };
}
render() {
if(this.state.type == "home"){
//do something
}else{
//do something
}
}
}
module.exports = Header;
AppRegistry.registerComponent('myApp', () => Header);
Home.js
class Home extends React.Component {
//set from here
componentWillMount(){
this.setState({Header.state.type:'home'});
}
}
module.exports = Home;
AppRegistry.registerComponent('myApp', () => Home);
您需要一个公共父组件,并且只需要通过AppRegistry.registerComponent()
安装一个初始组件。 像这样:
Parent.js
class Parent extends React.Component {
constructor(props) {
super(props);
this.state = { type: '' };
}
render() {
<Header></Header>
<Home></Home>
}
}
module.exports = Parent;
AppRegistry.registerComponent('myApp', () => Parent);
AppRegistry.registerComponent();
您其他组件中的呼叫需要删除。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.