React-Native的那些坑

来源:互联网 发布:程序员小组口号 编辑:程序博客网 时间:2024/06/05 09:50

React-Native的那些坑

环境搭建

这里以Mac为例,依次安装如下软件

  1. Homebrew - Mac上的包管理器,类似于Ubuntu的dpkg
  2. 使用Homebrew安装watchman,官方推荐,用于调试。命令brew install watchman
  3. 使用Homebrew安装flow,可选,它是针对JavaScript应用的静态类型检查器。命令brew install flow
  4. 安装Node
    • 这里FB推荐的是nvm,它是node版本管理器,注意与npm区分开来。nvm可以安装多个版本的node并可以方便的切换。安装nvm参考这里
    • 安装完nvm之后,安装node并初步设置。命令nvm install node && nvm alias default node
  5. 安装主角React-Native,命令npm install -g react-native-cli

创建项目

接下来FB提示我们可以创建第一个RN项目,命令
react-native init AwesomeProject

到这里就遇到了第一个坑:如果直接执行上述命令,那么不出意外,你要经过一个非常漫长的等待,即使连上了VPN,也不一定会很快。

这时候我们可以使用npm的在国内的镜像来解决这个问题,这里我用的是淘宝的npm镜像。

在~/.npmrc文件加入下面的内容

registry=https://registry.npm.taobao.org
这个文件默认是没有的,可以使用touch命令创建,使用vim来编辑。vim不会用?看这里

Android版只能一个Activity?

从FB提供的有界面跳转的Android Demo - UIExplorer, Movies里观察,它所有的跳转都是在一个Activity里边进行的。

从文档Sharing a ReactInstance across multiple Activities / Fragments in your app和github的issue Android apps are always one activity, not following Android activity stack guidelines里看,还是可以有多个Activity的,不过这个要尝试之后才知道。
不知道这不是Android里边的一个坑。

P.S. iOS版对应的Demo里边的跳转看着像UINavigationViewController跳转的效果,不过它没有像Android的Hierarchy Viewer这样的工具进行调试,所以不好确定是否有原生的多ViewController(可以类比Android里的Activity)的情况。

参考链接

  1. about react-native init AwesomeProject?
  2. React-Native Getting Started
  3. vi/vim基本使用方法
  4. Facebook开源React Native以及相应的IDE:Nuclide
  5. 一个资深iOS开发者对于React Native的看法
  6. React-Native android在windows下的踩坑记
  7. Integrating with Existing Apps
  8. Android apps are always one activity, not following Android activity stack guidelines #2916
  9. 零基础用react-native开发android app
  10. React Native 初探(iOS)
  11. React 入门实例教程
0 0
原创粉丝点击