首页 > 解决方案 > React Native - 一个全新的应用程序只显示黑屏。如何调试?

问题描述

我开始探索使用 React Native 构建移动应用程序并运行,即使在阅读了许多教程之后,也会遇到重复的问题。

我通过命令生成了一个新应用程序react-native init MyApp- 我注意到App.js文件中包含以下样式定义:

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: '#F5FCFF',
  },
  welcome: {
    fontSize: 20,
    textAlign: 'center',
    margin: 10,
  },
  instructions: {
    textAlign: 'center',
    color: '#333333',
    marginBottom: 5,
  },
});

但是,如果我决定只使用

export default class App extends Component {
  render() {
    return (
      <View>
        <Header />
      </View>
    );
  }
}

我只在模拟器中返回黑屏 - 要“看到”某些东西,我需要添加样式定义,如:

<View style={styles.container}>
  <Header />
</View>

如何避免总是为 指定样式定义<View>?屏幕背景是黑色的默认设置还是我忽略了什么?

到目前为止 - 开发相当混乱和困难,我基本上花了整个下午重新启动 iOS 应用程序(热重新加载并不总是有效)以查看应用程序中的新代码更改,而不是构建一些新功能。

我是否在做一些根本错误的事情(比如使用错误的开发工具)?

标签: androidiosreactjsreact-native

解决方案


如果您查看,AppDelegate.m您会看到 rootView 的颜色设置如下

rootView.backgroundColor = [UIColor blackColor];

这会将默认颜色设置为黑色,您可以将其更改为您想要的任何颜色。

但是它不会影响您在 Android 上执行的任何操作,因此最好在视图中设置您的 backgroundColor。


推荐阅读