【REACT NATIVE 系列教程之十一】插件的安装、使用与更新(示例:REACT-NATIVE-TAB-NAVIGATOR)...
本站文章均为 李华明Himi 原创,转载务必在明显处注明:
转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/react-native/2294.html
本篇主要来详细介绍如何安装、升级插件及讲解一个react-native-tab-navigator的示例。首先推荐一个插件网站:https://www.npmjs.com (此插件属于半官方维护的)本文举例使用的插件:react-native-tab-navigator ,选项卡形式的导航1. 通过 https://www.npmjs.com 找到我们想使用的插件, 搜索:react-native-tab-navigator2. 我们可以看到插件介绍页面有详细的介绍,以及如何安装也有介绍,如下图: 图中红色框选的是插件在github的源码页面地址~ 3. 下面对项目进行安装此插件:3.1 打开终端,cd 到项目根路径3.2 使用命令:npm install react-native-tab-navigator –save 进行安装,如下图: 3.3 安装成功后,你会在项目下的package.json文件内dependencies下看到(如下图): 新增加了一条:”react-native-tab-navigator”: “^0.3.2” 4. 更新插件的两种方式方式(上):4.1: 打开终端,cd 到目标项目根路径4.2 使用命令: npm install xxx@yyy –save –registry zzz –save 记录版本到项目的package.json下留底(一般最好都带上) –registry 指定 镜像源 xxx@yyy : @符号前是 插件名,@符号后是插件目标版本号 (如果目标版本号yyy填:latest 表示该插件的最新版本) zzz:制定的镜像源地址这里举例: npm install react-native-tab-navigator@latest –save 以上命令:更新react-native-tab-navigator插件到最新 ,且将版本号记录到项目的json文件中。 4. 更新插件的两种方式方式(下):4.1 :利用插件检查模块最新版本:npm-check-updates4.2 : 安装到项目中,然后利用命令:ncu 进行查看版本,如下图: 5. 插件的使用:5.1: 首先导入(使用node_modules下的模块,不需要路径):
[code=js;toolbar:false">import React, { Component } from 'react'; import { View, Text, StyleSheet, Image, } from 'react-native'; import TabNavigator from 'react-native-tab-navigator'; import TestPage from './TestPage'; export default class Main extends Component { constructor(props) { super(props); this.state = { selectedTab:'home' }; } render() { return ( <View style={{flex: 1}}> <Text style={styles.himiTextStyle}>Himi React Native 系列教程</Text> <TabNavigator tabBarStyle={styles.tab} > <TabNavigator.Item selected={this.state.selectedTab === 'home'} title="Home" renderIcon={() => <Image source={require('./res/home_normal.png')} />} renderSelectedIcon={() => <Image source={require('./res/home_focus.png')} />} badgeText="61" onPress={() => this.setState({ selectedTab: 'home' })}> <View style={{flex:1,backgroundColor:'#fff',justifyContent:'center'}}> <Text style={{fontSize:20}}>我是第一个选项卡,直接书写出的视图!</Text> </View> </TabNavigator.Item> <TabNavigator.Item selected={this.state.selectedTab === 'profile'} title="Profile" renderIcon={() => <Image source={require('./res/personal_normal.png')} />} renderSelectedIcon={() => <Image source={require('./res/personal_focus.png')} />} onPress={() => this.setState({ selectedTab: 'profile' })}> <TestPage/> </TabNavigator.Item> </TabNavigator> </View> ); } }; var styles = StyleSheet.create({ tab: { height: 100, backgroundColor: '#eee', alignItems: 'center' }, himiTextStyle:{ backgroundColor:'#eee', color:'#f00', fontSize:30, marginTop:30, }, });
5.2 : 绘制代码段:render() { return ( ...... <TabNavigator tabBarStyle={styles.tab} > <TabNavigator.Item selected={this.state.selectedTab === 'home'} title="Home" renderIcon={() => <Image source={require('./res/home_normal.png')} />} renderSelectedIcon={() => <Image source={require('./res/home_focus.png')} />} badgeText="61" onPress={() => this.setState({ selectedTab: 'home' })}> <View style={{flex:1,backgroundColor:'#fff',justifyContent:'center'}}> <Text style={{fontSize:20}}>我是第一个选项卡,直接书写出的视图!</Text> </View> </TabNavigator.Item> <TabNavigator.Item selected={this.state.selectedTab === 'profile'} title="Profile" renderIcon={() => <Image source={require('./res/personal_normal.png')} />} renderSelectedIcon={() => <Image source={require('./res/personal_focus.png')} />} onPress={() => this.setState({ selectedTab: 'profile' })}> <TestPage/> </TabNavigator.Item> </TabNavigator> ...... ); }[/code;'>
TabNavigator.Item: 每个选项卡的组件名,其中属性解释:selected:当前选项卡是否被选中title: 标题renderIcon:iconrenderSelectedIcon:被选中时的iconbadgeText:提示的角标数字onPress:点击后事件响应函数当选项卡被选中后,才会显示选项卡绘制的视图内容。最后给出一个示例,两个文件:Main.js
TestPage.jsimport React, { Component } from 'react';
import {
Text,
View,
} from 'react-native';
import TabNavigator from 'react-native-tab-navigator';
export default class TestPage extends Component {
constructor(props) {
super(props);
this.state = {
selectedTab:'home'
};
}
render() {
return (
<View style={{flex:1,backgroundColor:'#eee',justifyContent:'center'}}>
<Text style={{fontSize:20,color:'#f00'}}>我是TestPage,导入使用的!</Text>
</View>
);
}
};
效果演示(点击查看动态图):
- 【REACT NATIVE 系列教程之十一】插件的安装、使用与更新(示例:REACT-NATIVE-TAB-NAVIGATOR)
- 【REACT NATIVE 系列教程之五】NAVIGATOR(页面导航)的基本使用与传参
- Red Gate系列之五 .NET Reflector 7.6.1.824 Edition .NET程序反编译神器(附插件安装教程2012-10-13更新) 完全破解+使用教程
- Red Gate系列之五 .NET Reflector 7.6.1.824 Edition .NET程序反编译神器(附插件安装教程2012-10-13更新) 完全破解+使用教程
- 【REACT NATIVE 系列教程之二】创建自定义组件&&导入与使用示例
- react-native-tab-navigator组件的基本使用示例代码
- IntelliJ IDEA使用教程十一 Lombok插件 安装及使用
- IntelliJ IDEA使用教程十一 Lombok插件 安装及使用
- React Native中Navigator的使用方法示例
- react-native-vector-icons在tab中的使用代码示例
- React Native(简单精致的底部导航栏):使用react-native-tab-navigator实现底部导航栏
- Spring Boot系列教程十一: Mybatis使用分页插件PageHelper
- react native 实战系列教程之热更新原理分析与实现
- cordova热更新插件 的安装与使用 以及代码示例下载(已完结)
- React-Native学习笔记之:使用Tab react-native-tab-navigator框架
- 使用 react-native-tab-navigator 创建 TabBar 组件
- react native android使用react-native-tab-navigator来做底部导航tabbar(1)
- react native android使用react-native-tab-navigator来做底部导航tabbar(2)一个坑:navigator
- React Native教程之Navigator的使用
- Spring Boot系列教程十一: Mybatis使用分页插件PageHelper