javascript - 如何让 React Native 导航加载来自另一个文件的组件?
问题描述
我正在尝试学习 React Native 导航。这是我的 App.js,它工作正常,正如预期的那样:
import React, { Component } from 'react';
import { View, Text } from 'react-native';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';
class App extends Component {
HomeScreen() {
return (
<View style={{ flex: 1, alignItems: 'center', justifyContent: 'center' }}>
<Text>Home Screen</Text>
</View>
);
}
render() {
return (
<NavigationContainer>
<Stack.Navigator>
<Stack.Screen name="Home" component={this.HomeScreen} />
</Stack.Navigator>
</NavigationContainer>
)
}
}
const Stack = createStackNavigator();
export default App;
这里我已经HomeScreen
在 App.js 文件本身中定义了。但是,如果我想将它定义为另一个文件(比如 HomeScreen.js)中的独立组件,就像这样 -
import React, { Component } from 'react';
import { View, Text } from 'react-native';
class HomeScreen extends Component {
render() {
return (
<View style={{ flex: 1, alignItems: 'center', justifyContent: 'center' }}>
<Text>Home Screen</Text>
</View>
)
}
}
export default HomeScreen;
HomeScreen
我将如何在 App.js 中导入和使用它?我已经尝试过import HomeScreen from './components/HomeScreen'
,<Stack.Screen name="Home" component={HomeScreen} />
但这给了我一个错误,说它不是一个组件。我知道这是一个简单的基本问题,但到目前为止,我无法在任何地方找到答案。我应该使用不同的导航库来解决这个问题吗?
解决方案
我修好了它。我试图做的是给组件值 JSX 样式,就像component={<HomeScreen />}
但它应该只是component={HomeScreen}
.
推荐阅读
- javascript - 画布闪烁,img.src访问
- c# - 来自外部链接的 PhysicalFileResult 之后的 ASP.NET Core 重定向
- python - 使用 tensorflow 的句子相似度
- ios - 无法在 Jenkins Execute Shell 中使用 zsh/bash
- regex - 正则表达式匹配炒作之前的所有内容 - 多重匹配
- php - PHP getenv 总是返回 false
- javascript - 未捕获的 TypeError:c.getContext 不是函数
- python-3.x - 抓取并创建新的df
- reactjs - 自定义 Hook - 返回状态和设置状态
- git - 致命:无法访问“...”:请求的 URL 返回错误:403 Using Sourcetree with gitlab