【发布时间】:2018-11-23 06:01:10
【问题描述】:
我对一般编程相当陌生,甚至对 JS 和 React(Native) 都比较陌生,但我已经为此工作了一整天,但我仍然没有弄清楚,所以我求助于 Stack Overflow希望有人可以帮助我。
基本上我想要完成的是将其他Components 设置为App 组件的子级,因为我希望他们能够访问我将在App 的state 中设置的信息。但是,与此同时,我还使用react-navigation 创建底部导航栏,因此我不知道如何将App 的props 传递给其他Components,例如ExplorePage 组件这是另一个children components的代表。
应用
import React from 'react';
import ExplorePage from './app/tabs/ExplorePage';
import {createBottomTabNavigator} from 'react-navigation';
...other imports
class App extends React.Component {
state = {
parentState: 'testing testing',
}
}
const MainScreenNavigator = createBottomTabNavigator(
{
Home: {screen: ExplorePage},
Search: {screen: SearchPage},
Favorites: {screen: FavoritesPage},
}
);
export default MainScreenNavigator;
ExplorePage,类似于 SearchPage 和 FavoritesPage
...imports
export default class ExplorePage extends React.Component {
constructor(props) {
super(props);
this.state = {
}
}
componentDidMount() {
console.log(this.props.parentState ? this.props.parentState : "Parent state does not exist what do :(");
}
render(){
return(
<Text>Testing</Text>
)
}
显然每次控制台打印parentState 不存在。我认为在同一个地方会给其他components 像ExplorePage App 的道具。谢谢你帮助我!
【问题讨论】:
标签: reactjs react-native inheritance components