React Native中没有DOM的概念,只有组件的概念,所以在ReactJS中使用的HTML标签以及DOM的操作是不起作用的,但是组件的生命周期、JSX的语法、事件绑定以及自定义属性等,在React Native和ReactJS中是一样的。
1. View组件
在React Native里有一个类似于div的组件,就是View组件,支持多层嵌套,支持flexbox布局。
2. Text组件
- 概述:
- 作用:主要用于显示文本;
- 特性:具有响应性,可以嵌套,可以继承样式(内部Text组件可以继承外部Text组件样式)
- 主要特性:
- onPress
- numberOfLines
最多显示多少行
3. onLayout
3. Navigator组件
- 概述:
- 在RN中专门负责视图切换的组件;
- Navigator(Android和iOS)和NavigatorIOS(iOS)
- 对比:
- 两者都可以用来管理应用中“场景”的导航(屏幕)。导航器建立了一个路由栈,用来弹出、推入或者替换路由状态,他们和H5的history API很类似。
- 区别在于NavigatorIOS使用了iOS中的UINavigationController类,而Navigator则完全用js重写了一个类似功能的React组件。因此Navigator可以兼容iOS,而NavigatorIOS只能用于iOS。
- NavigatorIOS是轻量、受限的API,故相对于Navigator来说不太方便定制。由开源社区主导开发,RN的官方团队并不在自己的应用中使用。建议使用Navigator,避免在开发过程中遇到问题。
- 使用:
- 导航器通过路由对象分辨不同的场景,利用renderScene方法,导航栏可以根据指定的路由来渲染场景。
- 可以通过configureScene属性获取指定路由对象的配置信息,从而改变场景的动画或手势**