app.js 4.7 KB
/**
 * Created by DEV005 on 2017/8/23.
 */
import React, { Component } from 'react';
import { BackHandler,AppState,StyleSheet,View,Text
    , NativeModules,AsyncStorage,NavigationActions,
    ActivityIndicator,TouchableOpacity,Image,Touch,Platform,Dimensions
} from 'react-native';

import { StackNavigator,TabNavigator } from 'react-navigation';
import AppService from "./service/AppService";
import {xnToast,getHeaderHeight,getHeaderPadding,getFooterBottom} from "./utils/utils";
import {width,height} from "./utils/getSize";
//横竖屏
import Orientation from 'react-native-orientation';
//键盘启用与消失
import dismissKeyboard from 'react-native/Libraries/Utilities/dismissKeyboard';
import XnLoading from "./components/xnLoading";
//
// import {Subscribe,SubscribeDOM} from 'react-subscribe';
//通信
// import RPC from './utils/rpc';
//通信
// import hookNavigator from './utils/hookNavigator';


import Billing from './pages/Billing';
import BillingBatch from './pages/BillingBatch';
import BillingAdd from './pages/BillingAdd';
import BillingView from './pages/BillingView';




const Navigator  = StackNavigator({
    Billing:{screen:Billing},
    BillingView:{screen:BillingView},
    BillingBatch:{screen:BillingBatch},
    BillingAdd:{screen:BillingAdd}

},{
    // headerMode: 'none', // 导航栏的显示模式, screen: 有渐变透明效果, float: 无透明效果, none: 隐藏导航栏
    navigationOptions:{
        // // 设置导航条的样式。如果想去掉安卓导航条底部阴影可以添加elevation: 0,iOS去掉阴影是。
        headerStyle:{
            paddingTop:getHeaderPadding(),
            backgroundColor: '#fff',
            elevation: 0,   //去掉阴影
            height:getHeaderHeight(),
        },
        // 设置导航条文字样式。安卓上如果要设置文字居中,只要添加alignSelf:'center'就可以了
        headerTitleStyle:{
            color:'#000',
            alignSelf:"center",
            alignItems: 'center',
            justifyContent: 'center',
            flexDirection: 'column',
            fontSize:16,
        },
        headerLeft:(<View style={{flexDirection: 'row',flex: 1}}></View>),
        headerRight:(<View style={{flexDirection: 'row',flex: 1}}></View>)
    }
});

class App extends Component{

    constructor(props){
        super(props);
        this.state = {
            loading:true
        };
    }
    // getIdentityId=()=>{
    //     NativeModules.security.getIdentityId().then((result) => {
    //
    //
    //         }
    //     ).catch((error) => {
    //         console.log(error)
    //     });
    // }
    getUnionId=()=>{
        NativeModules.security.getUnionId().then((result) => {
                console.log(result);
             global.unionId = result;
                // result
            this.setState({
                loading:false
            });
            }
        ).catch((error) => {
            console.log(error)
        });
    }

    // // 查询用户信息
    // getPassportId=()=>{
    //     //获取
    //     NativeModules.security.getPassportId().then((result) => {
    //             AppService.getPassport({id:result}).then(data=>{
    //                 if (data.errors == null || data.errors.length > 0) {
    //                     xnToast(data.errors[0].message);
    //                     return
    //                 }
    //                 global.tenantId=data.passport.tenantId;
    //                 global.userId=data.passport.userId;
    //
    //                 this.getUser(data.passport.tenantId,data.passport.userId)
    //             });
    //         }
    //     ).catch((error) => {
    //         console.log(error)
    //     });
   // };

    // // 查询用户信息
    // getUser=(tenantId,userId)=>{
    //     let  _this=this;
    //     let vm={
    //         tenantId:tenantId,
    //         id:userId
    //     };
    //     AppService.getUser(vm).then(data=>{
    //         if (data.errors == null || data.errors.length > 0) {
    //             xnToast(data.errors[0].message);
    //             return
    //         }
    //         global.sourceId=data.user.sourceId;
    //         global.unionId=data.user.unionId;
    //         this.setState({
    //             loading:false
    //         });
    //
    //     })
    //
    // };

    componentWillMount(){
        let _this=this;
        this.getUnionId();


    }

    render() {
        return  <View style={styles.root}>
            {/*加载中*/}
            {this.state.loading &&<XnLoading/>}
            {!this.state.loading &&<Navigator />}
        </View>
    }
}
const styles = StyleSheet.create({
    root: {
        flex: 1,
        marginBottom:getFooterBottom(),
        backgroundColor:"#fff",
    }

});
export default App;