@superpigy
2025-02-26T18:19:10.000000Z
字数 1797
阅读 69
假设
getApp().globalData.context为保存的当前页面上下文
事件名称 recognition_done 为识别完成事件
事件名称 capture_done 为采集完成事件
const custom_callback = (res) =>{if(getApp().globalData.context.__route__ === {{当前页面路由}}){if(res.event === 'recognition_done' || res.event === 'capture_done'){console.log(res)getApp().globalData.context.on_hamuna_sdk_callback(res)}}}console.log('custom event registered')try{wx.onCustomEvent(custom_callback)}catch(e){}
app.globalData.context.capturing = truewx.capture({pool_id: {{识别池ID}},loading_id: {{自定义变量}},success(res){console.log(res)app.globalData.context.on_hamuna_sdk_callback(res)},fail(e){console.log(e.errmsg)app.globalData.context.notify.show("牛脸识别模块出现错误", "error")}})
app.globalData.context.capturing = truewx.recognition({pool_id: {{识别池ID}},pool_name: {{对应名称}},success: function(res){console.log(res)app.globalData.context.on_hamuna_sdk_callback(res)},fail: function(e){console.log(e.errmsg)app.globalData.context.notify.show("牛脸识别模块出现错误", "error")}})
on_hamuna_sdk_callback(res){if(res.event === 'capture_done'){var pool_id = res.data.pool_idif(pool_id != app.globalData.context.data.order.bind_pool_id){console.log('pool id not match')return}if(app.globalData.context.capturing){console.log('data changed')app.globalData.context.setData({data_changed: true})}else{}}else if(res.event === 'recognition_done'){var pool_id = res.data.pool_idif(pool_id != app.globalData.context.data.order.bind_pool_id){return}if(res.data.matched){if(app.globalData.context.capturing){console.log('data changed')app.globalData.context.setData({data_changed: true})}else{}}else{console.log('wrong matched')app.globalData.context.setData({has_wrong_matched: true})if(!app.globalData.context.capturing){}else{util.showModal("牛脸验证", "检测到匹配失败的牛只, 是否查看", function(res){if(!res.cancel){app.globalData.context.show_wrong_matches()}})}}}},