【问题标题】:React native changes from app.js file not reflecting on the expo反应来自 app.js 文件的本机更改未反映在博览会上
【发布时间】:2018-01-15 15:54:18
【问题描述】:

我正在按照官方的 react native 文档安装和运行示例 react native 应用程序。我通过以下方式创建了一个示例应用程序:

create-react-native-app AwesomeProject

cd 然后我按照指示安装了 Expo 应用程序并扫描了二维码并打开了 app.js 文件

app.js

import React from 'react';
import { StyleSheet, Text, View } from 'react-native';

export default class App extends React.Component {
  render() {
    return (
      <View style={styles.container}>
        <Text>Open up App.js to start working on your app!</Text>
        <Text>Changes you make will automatically reload.</Text>
        <Text>Shake your phone to open the developer menu.</Text>
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    alignItems: 'center',
    justifyContent: 'center',
  },https://stackoverflow.com/questions/278192/view-the-change-history-of-a-file-using-git-versioning
});

然后我删除了<Text>Shake your phone to open the developer menu.</Text> 并保存以检查编辑器上的更改是否反映在移动应用上。 但我还没有看到世博会应用程序有任何变化。我什至在android mobile上打开chrome浏览器并输入了ip地址,仍然没有变化。

【问题讨论】:

  • 您是否尝试摇晃您的设备(或模拟器上的Cmd+M)并重新加载 JavaScript?
  • 我尝试摇晃手机几次,但没有成功
  • 我注意到,在(某些)Android 设备上,震动有点不稳定,您需要真正将手腕放入其中! :) - 但是,应用程序不会自动重新加载 javascript,直到您从开发人员摇动菜单中打开 Live reload 或 Hot reload。如果你真的不能让抖动菜单出现,那就是个问题。
  • 你是对的。我不得不动摇它甚至很难得到那个 js 加载菜单。启用热重载后,更改开始出现。

标签: reactjs react-native


【解决方案1】:

在您从开发人员菜单中打开实时重新加载或热重新加载之前,该应用不会自动重新加载 JavaScript。

可以通过摇动设备或在 iOS 模拟器上按 Cmd+D 或在 Android 模拟器上按 Cmd+M 来访问开发菜单。请注意,在某些 Android 设备上,摇晃需要非常剧烈才能注册。

【讨论】:

  • 这确实有效。不知道 Android 面临着什么。
【解决方案2】:
  1. 确保 npm 服务器正在运行(如果没有通过命令 'npm start' 启动服务)
  2. 通过摇动设备访问开发者菜单或使用命令'adb shell input keyevent 82 ' 或按 ctrl+M(在 linux 上)
  3. 从开发菜单选项中选择“启用实时重新加载”
  4. 保存更改后,屏幕应该会重新加载。

【讨论】:

    猜你喜欢
    • 2021-05-07
    • 2019-10-16
    • 2020-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多