shuishen
2025-10-15 2fee66bc6651e1460ea1dbfb7affff2afa066add
src/components/WebViewPlus.vue
@@ -9,23 +9,28 @@
function viewMessage(event) {
  messageFun({
    data: {data: {arg: event.detail.data[0]}},
    type: 'WEB_INVOKE_APPSERVICE'
    data: {
      data: {arg: event.detail.data[0]},
      type: 'WEB_INVOKE_APPSERVICE'
    },
  })
}
// WEB_INVOKE_APPSERVICE
function messageFun(e) {
  if(e.data.type === 'WEB_INVOKE_APPSERVICE'){
    if (e.data.data.arg.type === 'tokenExpired'){
      return uni.redirectTo({
        url: '/pages/login/index'
      })
    }
    emit('webMessage', e.data.data.arg)
  }
}
onShow(() => {
  console.log('show')
  window.addEventListener('message', messageFun)
})
onHide(() => {
  console.log('hide')
  window.removeEventListener('message', messageFun)
})