From ebb73f88deeacde35b2b02c4d9b6eb90338d66df Mon Sep 17 00:00:00 2001 From: qiang Date: Thu, 1 Aug 2019 16:43:25 +0800 Subject: [PATCH] feat: app-plus uni.onNetworkStatusChange --- src/core/service/api/device/network.js | 19 +++++++++++++++++++ .../app-plus/service/framework/app.js | 8 ++++++-- 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 src/core/service/api/device/network.js diff --git a/src/core/service/api/device/network.js b/src/core/service/api/device/network.js new file mode 100644 index 000000000..7be6d6c37 --- /dev/null +++ b/src/core/service/api/device/network.js @@ -0,0 +1,19 @@ +import { + invoke +} from 'uni-core/service/bridge' + +import { + onMethod +} from '../../platform' + +const callbacks = [] + +onMethod('onNetworkStatusChange', res => { + callbacks.forEach(callbackId => { + invoke(callbackId, res) + }) +}) + +export function onNetworkStatusChange (callbackId) { + callbacks.push(callbackId) +} diff --git a/src/platforms/app-plus/service/framework/app.js b/src/platforms/app-plus/service/framework/app.js index ab40fd525..aca89c59a 100644 --- a/src/platforms/app-plus/service/framework/app.js +++ b/src/platforms/app-plus/service/framework/app.js @@ -16,7 +16,11 @@ import { isTabBarPage } from '../api/util' -import tabBar from './tab-bar' +import tabBar from './tab-bar' + +import { + publish +} from '../bridge' let appCtx @@ -54,7 +58,7 @@ function initGlobalListeners () { plus.globalEvent.addEventListener('netchange', () => { const networkType = NETWORK_TYPES[plus.networkinfo.getCurrentType()] - emit('onNetworkStatusChange', { + publish('onNetworkStatusChange', { isConnected: networkType !== 'none', networkType }) -- GitLab