init commit
This commit is contained in:
50
src/_core.js
Normal file
50
src/_core.js
Normal file
@@ -0,0 +1,50 @@
|
||||
import './polyfill';
|
||||
import _global from './polyfill/_global';
|
||||
import { setConfig, getVersion } from './services/config';
|
||||
import { onScanListener, offScanListener, setStatusListener, getStatus, startScan, stopScan, clear } from './services/provider/scan';
|
||||
import { initWxJssdk } from './services/wx';
|
||||
import { printDebug } from './utils/logger';
|
||||
|
||||
let _readyPromise = null;
|
||||
let _calledReady = false;
|
||||
|
||||
(function () {
|
||||
_global.__IScanReady__ && _global.__IScanReady__();
|
||||
})();
|
||||
|
||||
export function isReadyCalled() {
|
||||
return _calledReady;
|
||||
}
|
||||
|
||||
function config(config) {
|
||||
if (config) {
|
||||
setConfig(config);
|
||||
}
|
||||
if (_readyPromise) {
|
||||
return _readyPromise;
|
||||
}
|
||||
_readyPromise = Promise.resolve().then(() => {
|
||||
printDebug('-------------------------------');
|
||||
printDebug('sdk_version:', getVersion());
|
||||
printDebug('-------------------------------');
|
||||
initWxJssdk();
|
||||
return Promise.resolve().then(() => {
|
||||
_calledReady = true;
|
||||
}).catch(err => {
|
||||
_readyPromise = null;
|
||||
throw err;
|
||||
});
|
||||
})
|
||||
return _readyPromise;
|
||||
}
|
||||
|
||||
export default Object.assign({}, {
|
||||
config,
|
||||
onScanListener,
|
||||
offScanListener,
|
||||
setStatusListener,
|
||||
getStatus,
|
||||
startScan,
|
||||
stopScan,
|
||||
clear,
|
||||
});
|
||||
Reference in New Issue
Block a user