罗广辉
2025-10-14 c369295dd32f5ef519132d3b8bb0fcfdd1de63a5
feat: webviewplus
1 files modified
2 files added
85 ■■■■■ changed files
src/components/WebViewPlus.vue 32 ●●●●● patch | view | raw | blame | history
src/pages/inspectionTask/AppPowerful.vue 34 ●●●●● patch | view | raw | blame | history
src/pages/inspectionTask/index.vue 19 ●●●●● patch | view | raw | blame | history
src/components/WebViewPlus.vue
New file
@@ -0,0 +1,32 @@
<template>
  <web-view :src="src" @message="viewMessage"/>
</template>
<script setup>
const src = defineModel('src')
const emit = defineEmits(['webMessage'])
function viewMessage(event) {
  messageFun({data: {data: {arg: event.detail.data[0]}}})
}
function messageFun(e) {
  emit('webMessage', e.data.data.arg)
}
onShow(() => {
  console.log('show')
  window.addEventListener('message', messageFun)
})
onHide(() => {
  console.log('hide')
  window.removeEventListener('message', messageFun)
})
</script>
<style scoped lang="scss">
</style>
src/pages/inspectionTask/AppPowerful.vue
New file
@@ -0,0 +1,34 @@
<template>
  <web-view ref="sWebViewRef" :src="src"
            @message="viewMessage"/>
</template>
<script setup>
import {onLoad} from "@dcloudio/uni-app";
const src = defineModel('src')
const emit = defineEmits(['webMessage'])
function viewMessage(event) {
  messageFun({data: {data: {arg: event.detail.data[0]}}})
}
function messageFun(e) {
  emit('webMessage', e.data.data.arg)
}
onShow(() => {
  console.log('show')
  window.addEventListener('message', messageFun)
})
onHide(() => {
  console.log('hide')
  window.removeEventListener('message', messageFun)
})
</script>
<style scoped lang="scss">
</style>
src/pages/inspectionTask/index.vue
@@ -13,3 +13,22 @@
<style scoped lang="scss">
</style>
<!--<template>-->
<!--  <WebViewPlus :src="`${viewUrl}`" @webMessage="onPostMessage"/>-->
<!--</template>-->
<!--<script setup>-->
<!--import {useUserStore} from "@/store/index.js";-->
<!--import WebViewPlus from "@/components/WebViewPlus.vue";-->
<!--const userStore = useUserStore();-->
<!--const viewUrl = `http://192.168.1.15:5174/drone-app-web-view/#/appTaskDetails?params=${JSON.stringify(userStore?.userInfo)}`;-->
<!--function onPostMessage(data) {-->
<!--  console.log(data)-->
<!--}-->
<!--</script>-->
<!--<style scoped lang="scss">-->
<!--</style>-->