UNPKG

minix-template

Version:

minix template

130 lines (120 loc) 2.84 kB
/* * @Description: * @Autor: tangsj * @Date: 2022-04-27 15:31:32 * @LastEditTime: 2022-05-24 19:42:49 */ const bridgeModule = miniXs.requireModule('bridgeModule') const globalEvent = miniXs.requireModule('globalEvent') export function commandInterfaceWrapper( params, callback, failCallback ){ return new Promise((resolve, reject) => { if (!params) { reject('params can not be empty in native bridge module') } bridgeModule.commandInterface( JSON.stringify(params), function (res) { // prompt.showToast({ // message: '开始测试接口21', // duration: 200, // }) callback && callback(res) resolve(res) }, function (err) { // prompt.showToast({ // message: '开始测试接口22', // duration: 200, // }) failCallback && failCallback(err) resolve(err) } ) }) } export function globalEventModuleWrapper(apiName, params, callback) { if (globalEvent && globalEvent[apiName]) { globalEvent[apiName](params, (res) => { prompt.showToast({ message: '开始测试2', duration: 200, }) callback && callback(res) }) } else { // globalEvent 不支持 当前的方法 const errMsg = `globalEvent 缺少 ${apiName}` callback && callback({ status: -1, message: errMsg, }) } } export function customCommandInterface(params = isRequired('params'), options = {}) { let { subModuleName = 'commandInterface' } = options return new Promise((resolve, reject) => { console.log('params', params, subModuleName) bridgeModule[subModuleName]( params, resp => { try { resp = JSON.parse(resp) } catch (error) { // error } resolve(resp) }, err => { reject(err) } ) }) } export function aiSpeechModuleWrapper(apiName, params = {}) { return new Promise((resolve, reject) => { if (aiSpeechModule) { aiSpeechModule[apiName]( params, resp => { resolve(tryParseJson(resp)) }, err => { reject(tryParseJson(err)) } ) } }) } export function bridgeModuleWrapper(apiName, params = {}) { return new Promise((resolve, reject) => { if (bridgeModule) { bridgeModule[apiName]( params, res =>{ resolve(tryParseJson(res)) }, err =>{ reject(tryParseJson(err)) } ) }else { const errMsg = `current version bridgeModule has not ${apiName} interface` reject({ status: -1, message: errMsg, }) } }) } function tryParseJson(source) { try { return JSON.parse(source) } catch (error) { return source } }