为什么我在 Android 模拟器中刷新代码时遇到这么多问题

Why do I have so many problems refreshing code in Android emulator

因此,上周我刚刚开始使用 React Native 学习应用程序开发,因此我开始使用 Android studio 模拟器来 运行 我的应用程序。我注意到当我 运行 模拟器上的应用程序时,它似乎没有正确刷新代码。例如,我按照教程制作了这个非常简单的应用程序:

import React from 'react';
import { Text, View, Platform } from 'react-native';
import {Button} from 'native-base';

export default class App extends React.Component {
  render() {
    return (
      <View style={styles.container}>
        <Text>Testing 12321</Text>
        <Button><text>Hello World!</text></Button>
      </View>
    )
  }
}

const styles = {
  container: {
    flex: 1,
    marginTop: 24
  }
}

但是当我第一次创建它时,在教程中讲师忘记将 Text 标签放在按钮中,所以当我 运行 这个应用程序时,我得到了一个错误:

Text strings must be rendered within a <Text> component.
- node_modules\react-native\Libraries\Renderer\implementations\ReactNativeRenderer-dev.js:4137:14 in <anonymous>
- node_modules\react-native\Libraries\Renderer\implementations\ReactNativeRenderer-dev.js:4134:2 in createTextInstance
- node_modules\react-native\Libraries\Renderer\implementations\ReactNativeRenderer-dev.js:15909:12 in completeWork
- node_modules\react-native\Libraries\Renderer\implementations\ReactNativeRenderer-dev.js:19409:28 in completeUnitOfWork
- node_modules\react-native\Libraries\Renderer\implementations\ReactNativeRenderer-dev.js:19380:30 in performUnitOfWork
- node_modules\react-native\Libraries\Renderer\implementations\ReactNativeRenderer-dev.js:19347:39 in workLoopSync
- node_modules\react-native\Libraries\Renderer\implementations\ReactNativeRenderer-dev.js:18997:22 in renderRoot
* [native code]:null in renderRoot

而且它还在继续。然后在教程中,讲师注意到错误并通过在按钮中添加标签来修复它,但是当他这样做时,应用程序正确刷新并显示按钮但对我来说我仍然遇到同样的错误。我注意到模拟器经常发生这种情况,它不喜欢在打开新应用程序或更改应用程序时正确刷新。我已经删除并重新创建模拟器 5 次或更多次,以测试不同的应用程序。有没有人建议如何解决这个问题?提前致谢!

将您的 <text> 更改为 <Text>,如下所示。

<View style={styles.container}>
   <Text>Testing 12321</Text>
   <Button><Text>Hello World!</Text></Button>
</View>

有疑问欢迎留言