React Native环境搭建以及几个基础控件的使用
之前写了几篇博客,但是没有从最基础的开始写,现在想了想感觉不太合适,所以现在把基础的一些东西给补上,也算是我从零开始学习RN的经验吧!
一、环境搭建
首先声明一下,本人现在用的编辑器是SublimeText3。其实这种教程网上有很多,我只是单纯地把自己的一些经验写出来,也是自己的经历,有地方不对的请指正,感激不尽!
1.Mac开发RN环境搭建
1>安装homebrew,Mac上缺少包管理工具,所以安装Homebrew包管理管理我们需要安装的Node.js等工具和软件。
打开终端输入:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
在Max OS X 10.11(El Capitan)版本中,homebrew在安装软件时可能会碰到/usr/local
目录不可写的权限问题。可以使用下面的命令修复:
sudo chown -R `whoami` /usr/local
2>安装Node.js,既然安装好了Homebrew,那么我们通过HomeBrew来安装Node.js
brew install node
3>安装React Native的命令行工具(react-native-cli)
npm install -g react-native-cli
如果你看到EACCES: permission denied
这样的权限报错,那么修复权限问题
sudo chown -R `whoami` /usr/local
4>开发iOS必不可少的工具Xcode,这个可以直接在AppStore里面下载
5>安装WatchMan
WatchMan是由Facebook提供的监视文件系统变更的工具。
brew install watchman
6>OK,基本的已经安装完毕,现在可以测试安装了,先创建RN项目
react-native init AwesomeProject
下面这两句如果不熟悉终端的可以不看,直接打开文件夹找到ios文件夹,运行AwesomeProject.xcodeproj就可以了,下面这两句是在终端打开运行AwesomeProject.xcodeproj。
cd AwesomeProject
react-native run-ios
2.安卓环境搭建
ps:安卓环境我没有搭建过,有需要的同学可以看一下教程,跟着教程走搭建安卓开发环境。不过近期我应该会接触这一块,到时候我再修改一下!
二、基础控件的使用
1.对于rn文件的介绍
我有篇博客说过这一段,实在不懂得可以看一下我的这篇博客
2.基础控件的使用
1>Text的使用
首先需要引入Text模块,然后我们可以在View的背景下添加<Text>你需要写的文字</Text>,另外,在index.ios.js或者index.android.js文件中都有Text标签,我们也可以参考。这里我们主要介绍一下Text通用的常用属性。
numberOfLines:1,字面意思就可以看出来是行数的意思,
onPress ,我们也可以从字面猜到什么意思,这是当文本点击时调用的函数onpress={this._selector.bind(this)},实现_selector方法
_selector(){
//do something
}
这就实现了Text点击的效果。
另外,Text常用的样式:
<Text style={{color:'red', fontSize:20, fontWeight:300,textAlign:'center'}}>Text的常用属性</Text>,注意,直接写样式的话需要用{{}}括起来
这里我没有用StyleSheet来写,简单概括,一个字,懒 T_T
另外还有一些样式,lineHeight、fontFamily,backGroundColor等,这个可以自己测试一下,ps:textAlign对齐方式只是左右居中对齐,不是中心对齐,如果需要中心对齐,我们可以用View包住
<View style={{justifyContent: 'center',alignItems: 'center',backgroundColor: '#F5FCFF',width:200,height:200}}>
<Text style={styles.welcome}>
DemonShow
</Text>
</View>
其实这样我们也就做了一个简单的Button,
另外还有有的同学不知道怎么获取屏幕的宽高,我们需要引入Dimensions
let ScreenWidth = Dimensions.get('window').width;
let Screenheight = Dimensions.get('window').height;
ps:文字格式有的不太对,修改了一下
React Native环境搭建以及几个基础控件的使用的更多相关文章
- Ubuntu17.10 React Native 环境搭建
React Native 环境搭建 环境:ubuntu17.10 安装依赖 必须安装的依赖有:Node.React Native 命令行工具以及 JDK 和 Andriod Studio. 安装nod ...
- [RN] React Native 仿美团下拉筛选菜单控件
React Native 仿美团下拉筛选菜单控件 演示效果如下: 使用方法如下: 1.安装 npm install react-native-dropdownmenus --save react-na ...
- 初学 React native | 环境搭建(在模拟器上运行)
我的电脑是windows 所以就以 windows上+Android 配置React native 环境 网上的安装教程非常多,我总结了一下,配置环境时出错原因主要是node java python ...
- Mac系统下React Native环境搭建
这里记录一下在Mac系统下搭建React Native开发环境的过程: 1. 安装HomeBrew: /usr/bin/ruby -e "$(curl -fsSL https://raw.g ...
- 逻辑性最强的React Native环境搭建与调试
React Native(以下简称RN),已经“火”了好一段时间了,网上的资料相对也很丰富,只是一直迟迟没有发布1.0,不过出身豪门(Facebook)的RN和国内顶级互联网公司对于RN的实践与应用, ...
- react Native环境 搭建
react Native的优点:跨平台 低投入高回报 性能高 支持动态更新.一才两用(ios和Android) 开发成本第 代码复用率高.windows环境搭建react Native开发环境1.安装 ...
- React Native 环境搭建踩坑
React Native (web Android)环境搭建踩坑(真的是一个艰辛的过程,大概所有坑都被我踩了 官方文档地址 : https://facebook.github.io/react-nat ...
- React-Native(一):React Native环境搭建
第一步:安装jdk 从java官网下载jdk8 配置环境变量: JAVA_HOME:D:\Program Files\Java\jdk1.8.0_111 Path中追加:%JAVA_HOME%\bin ...
- react native环境搭建(含错误处理)
1. Python 2 注意,不要选择3.0及以上的,还不成熟 安装过程中一直 next就可以了,但是注意下图,勾选添加到系统环境变量 安装完之后cmd输入 python 查看是否安装成功. 补充 ...
随机推荐
- OVS 中的各种网络设备 - 每天5分钟玩转 OpenStack(128)
上一节我们启用了 Open vSwitch,本节将查看当前的网络状态并介绍 Open vSwitch 涉及的各种网络设备 初始网络状态 查看一下当前的网络状态. 控制节点 ifconfig 显示控制节 ...
- 操作系统篇-分段机制与GDT|LDT
|| 版权声明:本文为博主原创文章,未经博主允许不得转载. 一.前言 在<操作系统篇-浅谈实模式与保护模式>中提到了两种模式,我们说在操作系统中,其实大部分时间是待在保护模式中的. ...
- AFNetworking 3.0 源码解读 总结(干货)(下)
承接上一篇AFNetworking 3.0 源码解读 总结(干货)(上) 21.网络服务类型NSURLRequestNetworkServiceType 示例代码: typedef NS_ENUM(N ...
- [原]一个针对LVS的压力测试报告
LVS 测试报告 测试计划 基本功能测试 流量压力测试 响应时间测试 配置正确性测试 灾难恢复测试 测试点 基本功能测试 客户端IP地址正确性 RealServer 访问Internet测试(包括Ip ...
- Node.js npm 详解
一.npm简介 安装npm请阅读我之前的文章Hello Node中npm安装那一部分,不过只介绍了linux平台,如果是其它平台,有前辈写了更加详细的介绍. npm的全称:Node Package M ...
- Loadrunner Http Json接口压力测试
前天接到了一个测试任务,要求测试一下ES(elsticsearch)在不同并发下的查询效率.如图: 业务场景是在客户端根据具体车牌查询相关车辆信息,结果返回前10条记录. 从图中可以看到,接口的请求参 ...
- 体验报告:微信小程序在安卓机和苹果机上的区别
很多人可能会问:微信小程序和在微信里面浏览一个网页有什么区别? 首先,小程序的运行是全屏的,界面跟进入了一个APP很像,更为沉浸跟在微信里面访问h5不一样:其次,它的浏览体验更为稳定. 不过,这还不够 ...
- 解决WINDOWS防火墙开启后Ping不通
WINDOWS系统由于安全考虑,当开启防火墙时,默认不允许外主机对其进行ping功能,即别的电脑ping不通本机.别的主机ping不通本机是因为本机的防火墙关闭了ICMP回显功能,只要把这回显功能打开 ...
- PHP 数组浅析
PHP的数组具有如下特点:1.数组初始化时无需指定长度:2.数组中的元素无需相同类型:3.数组的长度可变4.可使用var_dump(参数)或者print_r( 参数) 函数查看数组变量.5.数组内的 ...
- 从贝叶斯到粒子滤波——Round 1
粒子滤波确实是一个挺复杂的东西,从接触粒子滤波到现在半个多月,博主哦勒哇看了N多篇文章,查略了嗨多资料,很多内容都是看了又看,细细斟酌.今日,便在这里验证一下自己的修炼成果,请各位英雄好汉多多指教. ...