Name Last Update
..
img Loading commit data...
util Loading commit data...
README.md Loading commit data...
about.js Loading commit data...
index.js Loading commit data...
package.json Loading commit data...

README.md

注意!!!!! 此组件仅适用于开发放牛娃外接小程序时使用,在此之外使用本组件开发造成的程序闪退现象不与修复

本组件功能为放牛娃小程序通用头部组件

使用方法

1.本组件依赖于react-navigation 2.13.0 版本 同时需要react-native版本为0.47.2 , react版本为16.0.0-alpha.12 ,请先安装前面3项依赖后, 再手动添加 react-native-screens 版本为 1.0.0-alpha.15

2.在控制台进入工程根目录下运行命令行 yarn add "xn-react-nativce-general-head" 或者 npm i xn-react-nativce-general-head --save

3.在创建路由时的页面 需要引用 (使用此组件,此项为必须项) import {Navigator} from 'xn-react-native-general-head';

创建固定头部导航栏 ,举个例子

const NavigatorNav = Navigator( { Home:{screen:Home}, Second:{screen:Second} }, { defaultBack:'', title:'我是一头小毛驴', //必填项,标明小程序名称 code:'visitorApp', //必填项,标明小程序code config:'DEV' //开发者选项, 此参数标明当前处于什么环境 (什么都不传为生产环境 开发传入DEV 测试传入TEST)

    //此处可传入 react-navigation 可选的视觉选项 如: (mode headerMode headerTransitionPreset cardStyle transitionConfig onTransitionStart onTransitionEnd)


}

)

export default class Demo extends Component { render() { return (
{NavigatorNav} //引入上面创建的 NavigatorNav 最为导航开始 必须放在一个flex:1的父视图内,否则会报错

);

} }

4.偶尔我们需要自定义页面头部底色和字体颜色 在具体 .js文件中 我们首先要将原有的 下面方法注释掉,防止重复设置导航栏头部

static navigationOptions = ({navigation, screenProps}) => ({

});

然后 可在 componentWillMount() componentDidMount() 方法中对导航栏头部进行设置,以下在componentDidMount 方法中做示范

componentDidMount(){ /---此处来自定义具体页面导航头部, 可自由设置 标题文字 背景颜色 字体颜色 和 左侧返回按钮的显示 如未设置则默认不显示返回按钮 背景颜色和标题颜色为 默认色(默认色由第三步中设置)---/ this.props.navigation.setParams({ title:'自定义Heade', //标题文字 isBack:false, //是否显示返回按钮 // backgroundColor:'red', //针对某界面更改头部背景色,但是头部按钮仍保持原色 // titleColor:'yellow', //针对某界面更改标题颜色 // backClick:()=>{} //可以传入一个方法取代左上角的返回方法,支持自定义(可选项,参数必须为一个方法) // muenList:()=>{} //可以传入一个方法,此方法为点击标题触发,支持自定义(可选项,参数必须为一个方法,此参数暂时仅针对任务中心开发,其他应用暂不能使用,如使用,后果自负) }); }

5.本组件继承'react-navigation'组件 页面跳转方法 没有改变

this.props.navigation.navigate('XXX'); // 页面跳转 this.props.navigation.goBack(); //返回上一页面

-----更新日志--------- 2019.12.23 1.创建导航时options参数添加closeModel,目前支持传入'FINISH'实现在android端点击右上角圆圈直接关闭RN应用而不是让RN栈退到后台 例 const NavigatorNav = Navigator( { TabNav: {screen: TabNavigator}, }, { defaultBack:'', title:RString('app_name'), //必填项,标明小程序名称 code:'TicketRN', //必填项,标明小程序code config:'', //开发者选项, 此参数标明当前处于什么环境 (什么都不传为生产环境 开发传入DEV 测试传入TEST) closeMode:'FINISH', // 当点击右上角小圆点时,是否彻底关闭RN应用 }

-----更新日志--------- 2020.05.28

1.增加单独导航页面 btnColorReversal 属性 设置默认为 false ,设置为 true 时,会使当前页面导航栏按钮颜色变为相反的颜色,

默认导航栏按钮为白色时,设置 btnColorReversal 为 true 导航栏按钮将变为黑色,反之默认黑色时,设置为该属性后导航栏按钮将变为白色

例: this.props.navigation.setParams({ btnColorReversal:true });