uniapp,vue,uni.request()實現同步返回數據處理,繼續執行後面的數據

App.vue

//應用載入

onLaunch: function(option) {
let $this = this;
$this.globalMain();

methods: {

	globalMain: async function(apiServer, params = {}) {
		let $this = this;
		let Time = new Date();
		let timestemp = Time.getTime();
		let getUrl = $this.$base_url + '/api/config/siteInfo.php?s=' + Math.random();
		let getSiteConfig = false;

		//////讀取站點配置信息//////
		let siteConfig = uni.getStorageSync('siteConfig');
		if (!siteConfig) {
			//console.log('沒有數據');
			getSiteConfig = true;
		} else {
			//console.log('取緩存數據');
			if (timestemp > siteConfig.exptime) {
				//console.log('數據超時');
				getSiteConfig = true;
			}
		}

		if (getSiteConfig == true) {
			//console.log('取實時數據');
			var [err, res] = await uni.request({
				url: getUrl,
				method: 'GET',
				data: {}
			});

			if (res.data.errNo == 0) {
				uni.setStorageSync('siteConfig', res.data.data);
				siteConfig = res.data.data;
			} else {
				$this.$api.msg(res.data.msg);
			}
		}

		console.log(siteConfig);
		
		$this.userLogin();
		

	}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章