App.vue 1.6 KB
<script>
	import {
		getInfo
	} from '@/common/login.js';
	import * as api from '@/common/api.js';
	import config from '@/config.js';

	let loginUrl = ['login/login', 'login/register', 'personal/addVip_per']
	let firstload = false
	export default {
		globalData: {
			isLogin: false,
			baseUrl_api: '',
			user: null,
			userType: '',
			userInfo: null,
			deptType: '',
			genFlag: '',
			authenticationStatus: '',
			memberInfo: null,
			isExam: false
		},
		onLaunch: function(options) {
			console.log('App Launch', options);

			this.globalData.baseUrl_api = config.baseUrl_api;
			if (loginUrl.indexOf(options.path) == -1) {
				let userName = uni.getStorageSync('userName')
				if (userName) {
					getInfo().then(() => {
						this.globalData.isLogin = true;
						firstload = true
						let firstLoadCallback = getApp().firstLoadCallback;
						if (firstLoadCallback) {
							firstLoadCallback();
						}
					}).catch(() => {
						firstload = true
						uni.redirectTo({
							url: '/login/login'
						})
					})
				} else {
					this.globalData.isLogin = false;
					firstload = true
					uni.redirectTo({
						url: '/login/login'
					})
				}
			}
		},
		onShow: function() {
			console.log('App Show', firstload, this.globalData.isLogin);
			// if (firstload && !this.globalData.isLogin) {
			// 	uni.redirectTo({
			// 		url: '/login/login'
			// 	})
			// }
		},
		onHide: function() {
			console.log('App Hide');
		}
	};
</script>

<style lang="scss">
	/*每个页面公共css */
	@import '/common/uni.css';
	@import '/common/mystyle.scss';
</style>