没有简介,直接开始干活吧。

默认阅读本文的你已经安装好 nodejs, windows用户需要升级yarn到最新版本。

并且设置安装源为国内的淘宝源:

  1. npm config set registry https://registry.npm.taobao.org --global

初始化

开发过 react 的同学想必对于 create-react-app 并不陌生,这个cli工具大大简化了配置,让我们上手即可开发。

对于 react-native, facebook官方也放出了 create-react-native-app 工具,使用起来非常简单:

  1. # mac和linux下面需要加sudo,windows不用加
  2. sudo npm i -g yarn create-react-native-app
  3. # 切换到工作目录,初始化react-native项目
  4. create-react-native-app hello-world
  5. # cli工具会创建一个hello-world目录,并写入需要的配置
  6. # 进入目录,安装依赖
  7. # 注意: 如果yarn版本过低,会报解压文件失败的错误,升级yarn之后重新安装即可
  8. cd hello-world
  9. yarn

运行模拟器(macOs)

因为cli工具已经生成了一个简单的app.js组件,所以我们不需要编码,直接启动服务即可:

  1. yarn ios

不出意外的话,这里会出错误,是提示需要设置最大打开文件数,或者是安装 watchman, 这里的 watchman 并非npm包。

  1. 23:14:01: Unable to start server
  2. See https://git.io/v5vcn for more information, either install watchman or run the following snippet:
  3. sudo sysctl -w kern.maxfiles=5242880
  4. sudo sysctl -w kern.maxfilesperproc=524288

解决方式就是按照提示一步一步来:

  1. brew install watchman
  2. # 或者下面的代码
  3. sudo sysctl -w kern.maxfiles=5242880
  4. sudo sysctl -w kern.maxfilesperproc=524288

执行完后,再次运行,第一次运行,会卡在 Starting packager... 比较久

  1. yarn ios

紧接着会弹出ios模拟器,滑动到最后一页,找到expo图标,打开它。如果没有找到这个图标,重启项目就可以了。

语法

现在回头看看根目录下的 app.jsreact-native 使用 jsx 语法进行开发。

样式方面,采用 css in js 方案处理组件样式。布局默认使用 flexbox,纵向排列。

view组件和text组件都有各自的属性,像color, fontSize等文本属性,只能用于text,而不能通过view继承,混用会出现警告。

react-native初体验(1) — hello world的更多相关文章

  1. spring native 初体验实现 小米控制美的空调

    目前关于 spring native 分享的文章还比较少 写这篇文章的主要目前是分享一下自己写的一个 小米控制美的空调 的程序 集成 spring native 过程中碰到的一些问题和解决方法 先放地 ...

  2. H5、React Native、Native应用对比分析

    每日更新关注:http://weibo.com/hanjunqiang  新浪微博!iOS开发者交流QQ群: 446310206 "存在即合理".凡是存在的,都是合乎规律的.任何新 ...

  3. 初窥React Native

    这两天在学习react native,被虐得布耀布耀的,运行一个hello world花了一天时间(手动捂脸). 由于是跟着官网走,所以一开始便是开发环境的搭建.其他的就不说了(详情见 React N ...

  4. React Native 之TabBarIOS

    前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所 ...

  5. beeshell —— 开源的 React Native 组件库

    介绍 beeshell 是一个 React Native 应用的基础组件库,基于 0.53.3 版本,提供一整套开箱即用的高质量组件,包含 JavaScript(以下简称 JS)组件和复合组件(包含 ...

  6. 【腾讯Bugly干货分享】React Native项目实战总结

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/577e16a7640ad7b4682c64a7 “8小时内拼工作,8小时外拼成长 ...

  7. 【Knockout.js 学习体验之旅】(1)ko初体验

    前言 什么,你现在还在看knockout.js?这货都已经落后主流一千年了!赶紧去学Angular.React啊,再不赶紧的话,他们也要变out了哦.身旁的90后小伙伴,嘴里还塞着山东的狗不理大蒜包, ...

  8. React Native初探

    前言 很久之前就想研究React Native了,但是一直没有落地的机会,我一直认为一个技术要有落地的场景才有研究的意义,刚好最近迎来了新的APP,在可控的范围内,我们可以在上面做任何想做的事情. P ...

  9. React Native之ListView使用

    前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所 ...

  10. React Native Changed the World? or Nothing.

    RN是一个awesome的技术, facebook很有想法的团队创造出一项新的技术改变了native开发界. 但是RN本身又疑点重重, RN是为了解决什么问题而存在的? 在诞生了一年后, RN又解决了 ...

随机推荐

  1. int to string & string to int

    #include "stdafx.h" #include <string> #include <sstream> using namespace std; ...

  2. 【转载】Spring最佳后台框架

    https://www.quora.com/What-is-the-best-backend-arquitecture-using-spring-framework The most modern a ...

  3. SGU---103 最短路变形

    题目链接: https://cn.vjudge.net/problem/SGU-103#author=ECUST_FZL 题目大意: Dingiville 城市的交通规则非常奇怪,城市公路通过路口相连 ...

  4. Linux服务器之间免密同步文件、重启R服务

    机器:ML-01/ML-02/ML-03 需求: 1.在ML-01上自动将文件同步至ML-02/ML-03 2.在ML-01上通过脚本重启ML-02/ML-03上的R服务 说明:以下示例中,ML-02 ...

  5. Ubuntu下查看自己的GPU型号

    1.在命令行中输入:lspci 即可看到当前显卡型号. 2.Ubuntu 14.04 安装 Nvidia 私有驱动 sudo apt-get install nvidia-331 3.进行双显卡切换n ...

  6. gulp合并压缩

    1.文件合并压缩 var concat = require(‘gulp-concat’); //引用 var uglify = require(‘gulp-uglify’);  接下来,只要conca ...

  7. 1553: Good subsequence (很奇妙的set模拟题,也可以直接暴力)

    1553: Good subsequence Submit Page    Summary    Time Limit: 2 Sec     Memory Limit: 256 Mb     Subm ...

  8. 1549: Navigition Problem (几何计算+模拟 细节较多)

    1549: Navigition Problem Submit Page    Summary    Time Limit: 1 Sec     Memory Limit: 256 Mb     Su ...

  9. 1363: Count 101 (经典数位dp)

    1363: Count 101 Submit Page    Summary    Time Limit: 1 Sec     Memory Limit: 128 Mb     Submitted: ...

  10. 考虑写一个不抛出异常的swap函数

    我们可以调用std下的swap函数,这是一个模板函数:既可以: ; ; std::swap(a,b); cout<<"a = "<<a<<&qu ...