在不同的本机命令中运行什么?

时间:2018-06-25 14:00:55

标签: android react-native npm yarnpkg

React Native在幕后会发生什么?

当我启动react-native应用程序时,有人可以解释运行哪些不同的RN组件和配置文件以及自动调用哪些程序吗?这些设置在哪里,由“决定”?

在我的react-native应用中(没有expo),我有

  • app.js
  • index.js,然后是
  • android和ios java文件以及各种
  • gradle和其他配置json文件。
  • 带有“故事”的故事书目录
  • 开玩笑-单元测试

我的app.js看起来像这样:

import StorybookUI from './storybook';
import AppRedux from './AppRedux';

module.exports = AppRedux;
// module.exports = StorybookUI;
// This will load StorybookUI on Dev and App in Release 
// module.exports = __DEV__ ? StorybookUI : AppRedux;

要在模拟器或连接的设备中运行该应用程序,可以使用:

  • react-native run-android
  • npm start
  • yarn start

在某些时候,它们会打开另一个运行Node的cmd窗口。

要在故事书中运行,我将app.js设置为运行故事书,然后必须执行三件事:

  • App.js中,我导出到故事书(见下文)
  • 在一个cmd窗口中运行:npm run storybook
  • 在另一个cmd窗口中运行:react-native run-android

要在开发过程中创建.apk文件,请使用:

  • gradlew clean
  • gradlew appDebug创建一个APK,然后
  • 下载到设备(我使用Google驱动器)并安装。

在我的package.json中,我有:

"scripts": {
  "start": "node node_modules/react-native/local-cli/cli.js start",
  "test": "jest",
  "storybook": "storybook start -p 7007"
},

如果我要运行故事书,我将分别进行npm run storybookstorybook start -p 7007的操作,因此我想这是由于package.json中的设置所致。但是,当我执行react-native run android时会运行什么,以及如何知道从app.js开始。什么时候使用index.js文件?

有人可以在所有这一切中解释什么时候和被谁叫吗?

似乎app.js调用索引,但是在哪里?那是谁?

换句话说,引擎盖下发生了什么事?

0 个答案:

没有答案