如何用 React Native 创建一个iOS APP

如题所述

第1个回答  2017-01-20
首先,我们先来安装相应的工具。React native 是使用 Node.js来 创建 Java 代码。如果你已经在你电脑上安装上了这些工具,你可以跳过下面这几步。
  推荐使用 Homebrew的方式来安装 nvm,watchman 和 flow。
  在Mac下,如果用homebrew,那么只用一行就可以装好:
  brew install node
  接下来安装watchman
  brew install watchman
  watchman是Facebook的一个文件观察者。React Native 用它来检测代码的变化.
  接下来安装 npm
  npm install -g react-native-cli
  nmp 是 node的一个三方管理工具,相当于 Ruby中的RubyGems,iOS中的 CocoaPods,Java中的 Gradle/Maven,基本上,它使您能够轻松下载和管理你的项目需要的任何依赖库。
  在终端,找到你希望保存的项目文件,然后运行下面的文件夹。
  react-native init BookSearch
  以上使用 CLI 工具来构建一个 Native 项目,是准备建立并运行原样。当这个过程完成后,你就会在终端窗口中打开 Xcode 的BookSearch.xcodeproj 并运行应用程序像往常一样。做到这一点,模拟器将启动您的应用程序的运行。一个终端窗口也将打开。当一个Native应用程序启动时
  终端被打开,服务器开始作出反应来处理上述请求。该 Native 负责读取和建设 JSX(我们将看看这个版本)和 Java 代码。
  
  运行这个 APP,你可以看到下图中的模拟器,如果你想在开发运行有几个步骤,你应该这样做。
  
  欢迎屏幕给出了一些关键的指令,你应该注意:编辑应用程序的用户界面,你应该修改,当你创建项目时生成的 index.ios.js 文件,如果您更改 Java 代码,重新加载命令应用程序 Command-R 看到的变化,如果你想要更多的选择,使用命令控制 Command-Control-Z 打开开发者菜单,提供了这样的选项,使现场重新加载和浏览器的调试。
  
  在任何时候做本教程时你可能会遇到一个红色屏幕模拟器,可以检查错误消息。它能让你知道这个问题是与你的代码还是服务器有关系。当我接收到错误的消息「无法连接到服务器」 在模拟器和检查终端有一个「流程终止」 错误消息时我陷入了服务器连接问题。当这种情况发生时,关闭终端窗口,停止在 Xcode 中的应用并再次运行它。对于其他错误,是由于语法错误代码中或网络请求超时时(如果你的应用从互联网上获取数据),一个简单的重新加载后修复这个问题应该怎么做。
  如果你在敦促 Command-R 键盘但什么都没有发生,硬件键盘可能没有连接到模拟器上。选择模拟器上的选项菜单以连接它:Hardware > Keyboard > Connect Hardware Keyboard.
  如果你按上边程序做了它依然不能重新加载,那么你可能需要重启你的电脑。我遇到过一次突然死机,重启电脑可以完成加载。
  我们现在开始构建应用程序,打开 index.ios.js 文件。我建议使用适合 web 开发的 IDE。你还可以使用 Xcode,但你会发现它并不适合因为在代码格式化、自动完成和语法错误突出显示时它不是非常灵活。你可以通过学习本文来决定并选择合适的 Java IDE。我用过 RudbyMine,但实际上任何 IDE 都支持 Java。如果你能得到一个支持 JSX 的那真很不错。
  当你打开 indx.ios.js 文件,你就会看到正在运行的应用程序构建 UI 的代码。你可能看到以下代码块。
  'use strict'
  以上代码启用了严格的模式,增加了处理原生 Java 代码对错误的改善。
  var React = require('react-native');
  以上代码可以加载 react-native 模块,并将它赋予变量的反应。在你调用任何模块之前你需要把外部模块加载到你的文件中来。可以把它作为Swift 和 Objective-C 的导入库。
  var { AppRegistry, StyleSheet, Text, View, } = React;
  上面是一个解构赋值,你可以通过它将多个对象属性分配给一个变量。这能让他们在文件作用域被引用。以上是可选择的,但如果你不用它,那么每次你使用一个组件在你代码中时,你就必须使用完全限定的名称,例如:「React.AppRegistry」而不能只用「AppRegistry」 、「React.StyleSheet」 而不能用「StyleSheet」 等等。
  var BookSearch = React.createClass({ render: function() { return ( <View style={styles.container}> <Text style={styles.welcome}> Welcome to React Native! </Text> <Text style={styles.instructions}> To get started, edit index.ios.js </Text> <Text style={styles.instructions}> Press Cmd+R to reload,{'\n'} Cmd+Control+Z for dev menu </Text> </View> ); } });
  上面创建一个类只有一个渲染 () 函数。在渲染函数中无论什么被定义都是将输出到屏幕上。上述使用 JSX(Java语法扩展)来构建应用程序的 UI。如果您以前使用过 XML(甚至HTML),JSX 就会记住并熟悉你。它具有相同的均衡功能来打开和关闭标签并使用属性来设置值标签。你不需要使用 JSX 本地反应,你可以使用纯 Java,但 JSX 建议它的简单定义树结构。如果你有很多 UI 的代码,通过大型的 JSX 树结构将更容易阅读理解。
  var 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, }, });
  上面的样式应用可于视图的内容。如果你做过 web 开发或用过 CSS(层叠样式表),在此之前这应该是熟悉的。React Native 使用 CSS 样式应用程序的UI。如果你看看 JSX 代码,你会看到不同风格的代码被用在不同的地方。例如: style={style.container}设置样式定义容器的外部视图包含其他UI组件。
  上面的样式应用可于视图的内容。如果你做过 web 开发或用过 CSS(层叠样式表),在此之前这应该是熟悉的。React Native 使用 CSS 样式应用程序的 UI。如果你看看 JSX 代码,你会看到不同风格的代码被用在不同的地方。例如: style={style.container}设置样式定义容器的外部视图包含其他 UI 组件。

React Native 打包 App 发布 iOS 及加固混淆过程
正文第一步:设置 bundle-ios 命令 在 package.json 文件的 scripts 部分添加以下命令,用于生成 iOS 打包所需的 bundle 文件:第二步:通过 Xcode 打开项目 使用 Xcode 打开 iOS 项目,选中项目目录下的 .xcodeproj 文件。第三步:将 bundle 文件加入项目 右击鼠标,在弹出菜单中选择 “Add Files t...

如何用 React Native 创建一个iOS APP
下面,我们可以尝试用React Native创建一个 iOS APP.在我们开始之前,我建议:你可以在 Github 里先下载 React Native 的代码框架。里面还有一些示例项目,2048 的游戏, Movies(一个看电影的 APP),SampleApp, TicTacToe (一款游戏)和 UIExplorer(能显示出所有用 React Native 替代的控件,如ListView,...

React-Native打包IOS安装在iPhone上
1.命令行进入项目目录 执行 react-native bundle --entry-file .\/index.js --bundle-output .\/ios\/bundle\/index.jsbundle --platform ios --assets-dest .\/ios\/bundle --dev false 2.将打包好的bundle下的文件拖入xcode项目目录中(和info.plist同目录);3.将ios-》项目名-》AppDelegate....

reactnative环境搭建?
1、VSCode安装ReactNativeTools插件。 2、生成package.json,用盯慎npminit命令 tsconfig.json,typescript的项目都需要一个tsconfig.json 输入命令tsc--init会创建一凯旁敬个这样启段内容的tsconfig.json react-native配置启动图支持ios和android 当前环境 OS:macOSHighSierra10.13.5 Node:8.11.3 Yarn:1.7.0 npm:5.6....

如何在 iOS 设备上运行React Native App
打开 iOS \/ AppDelegate.m 遵循“选项 2”的说明:取消 jsCodeLocation =[[NSBundle mainBundle]…在你应用程序的根目录的终端运行给定 curl 命令 Packager 支持几个选项:dev(默认的 true)——设置了 __DEV__ 变量的值。当是 true 时,它会打开一堆有用的警告。对于产品,它建议使用 dev = ...

React Native框架写小程序,并运行在App的一种方法
FinClip官方提供了详细的环境搭建文档,项目运行稳定。在VSCode+Xcode开发组合环境下,你可以选择两种不同的方式运行App在iOS\/Android平台。同时,ReactNative需要依赖本地安装对应的iOS、Android开发工具,即需要安装Xcode和AndroidStudio。在main.dart文件中,通过引入小程序引擎插件和初始化方法,即可实现小程序...

react-native ios 打包怎么安装到手机中
1、安装nactiv-cli来完成react-native所运行的环境,安装命令如下:npm install -g react-native-cli 2、运行源码抓取命令手机React Native的源码和依赖,提供在xcode中创建的项目之用。react-native init AwesomeProject 在xcode中的目录包括:\/iOS\/AwesomeProject.xcodeproj 3、运行电影程序:render() { ...

如何在现有app项目中集成react native的混合开发
关键点包括:设置入口文件和导航栏,如使用react-navigation和redux进行管理;处理与原生的通信,利用NativeModules和NativeEventEmitter实现双向通信,注意处理RN调用Android时的回调问题;图片处理和打包时,需根据平台差异进行适配,如iOS采用bundle命令打包,Android则打包为bundle文件。通过以上步骤,开发团队能够在...

react-native Expo项目如何搭建接口代理?
1. 首先,确保你已经安装了expo-cli。如果没有安装,可以使用以下命令进行安装:npm install -g expo-cli 2. 在你的React Native Expo项目的根目录下创建一个名为app.json的文件(如果已经存在则跳过此步骤)。3. 在app.json文件中添加一个名为expo的对象,并在该对象中添加一个名为extra的对象。

如何在Android和iOS平台运行React Native应用
1、方式一 通过Xcode直接打开iOS应用,运行即可。如下图所示。2、方式二 先将终端、Xcode、模拟器退出,然后重启终端,在终端中切换到项目路径,再在终端中输入react-native run-ios 四、如何在Android端运行React Native程序 1、首先需要启动模拟器 启动模拟器有两种方式:方式一:如下图所示,1终端输入...

相似回答