web-view.uvue 1.0 KB

12345678910111213141516171819202122232425262728293031323334
  1. <script setup lang='ts'>
  2. import { ref, onMounted, watchEffect } from 'vue'
  3. import Loading from '@/components/loading.uvue'
  4. import { router, user } from '@/.cool'
  5. import Back from '@/components/back.uvue'
  6. // const baseUrl = ref('http://192.168.110.102:8601')
  7. const baseUrl = ref('https://oss.xiaoxiongcode.com/gui/index.html')
  8. const webviewSrc = ref('')
  9. var isLoading = ref(true)
  10. function handleLoad() {
  11. isLoading.value = false
  12. }
  13. function handleMessage(e) {
  14. console.log(e)
  15. }
  16. onMounted(() => {
  17. const url = router.query().url
  18. if (url) {
  19. webviewSrc.value = baseUrl.value + '?token=' + user.token + '&userId=' + user.info.value?.userInfo.userId + '&sb3Url=' + url
  20. } else {
  21. webviewSrc.value = baseUrl.value + '?token=' + user.token + '&userId=' + user.info.value?.userInfo.userId
  22. }
  23. })
  24. </script>
  25. <template>
  26. <Loading v-show="isLoading" />
  27. <web-view id="webView1" :src="webviewSrc" class="w-full h-full" @load="handleLoad"
  28. @message="handleMessage"></web-view>
  29. </template>
  30. <style lang="less" scoped></style>