shuishen
2025-10-20 fffa69470ac7cf3c6e85c4b2fd9c6730a39a93ed
feat:基础配置调整
3 files modified
68 ■■■■ changed files
src/pages/map/index.vue 17 ●●●●● patch | view | raw | blame | history
src/subPackages/qrCode/index.vue 21 ●●●● patch | view | raw | blame | history
src/utils/common/index.js 30 ●●●●● patch | view | raw | blame | history
src/pages/map/index.vue
@@ -2,7 +2,7 @@
 * @Author       : yuan
 * @Date         : 2025-10-14 17:40:58
 * @LastEditors  : yuan
 * @LastEditTime : 2025-10-15 15:54:25
 * @LastEditTime : 2025-10-20 09:21:34
 * @FilePath     : \src\pages\map\index.vue
 * @Description  : 
 * Copyright 2025 OBKoro1, All Rights Reserved. 
@@ -15,15 +15,18 @@
</template>
<script setup>
import { useUserStore } from "@/store/index.js";
import { getWebViewUrl } from "@/utils/index.js";
import WebViewPlus from "@/components/WebViewPlus.vue";
const userStore = useUserStore();
const viewUrl = `http://192.168.1.194:5174/drone-app-web-view/#/webViewWrapper/defaultMap?params=${JSON.stringify(
  userStore?.userInfo
)}`;
const viewUrl = getWebViewUrl("/defaultMap");
const onPostMessage = (event) => {};
const onPostMessage = (data) => {
  if (data.type === "scanCode") {
    uni.navigateTo({
      url: "/subPackages/qrCode/index",
    });
  }
};
onLoad(() => {});
</script>
src/subPackages/qrCode/index.vue
@@ -1,9 +1,24 @@
<template>
  <web-view ref="sWebViewRef" :src="`${viewUrl}`" />
  <view class="page-wrap">
    <WebViewPlus :src="`${viewUrl}`" @webMessage="onPostMessage" />
  </view>
</template>
<script setup>
const viewUrl = `https://192.168.1.194:5174/drone-app-web-view/#/webViewWrapper/QrCodeScanner`;
  import {
    getWebViewUrl
  } from "@/utils/index.js";
  import WebViewPlus from "@/components/WebViewPlus.vue";
  const viewUrl = getWebViewUrl("/QrCodeScanner");
  const onPostMessage = (event) => {};
  onLoad(() => {});
</script>
<style lang="scss" scoped></style>
<style lang="scss" scoped>
  .page-wrap {
    font-size: 20px;
  }
</style>
src/utils/common/index.js
@@ -1,5 +1,15 @@
/*
 * @Author       : yuan
 * @Date         : 2025-10-15 15:52:12
 * @LastEditors  : yuan
 * @LastEditTime : 2025-10-16 17:57:16
 * @FilePath     : \src\utils\common\index.js
 * @Description  :
 * Copyright 2025 OBKoro1, All Rights Reserved.
 * 2025-10-15 15:52:12
 */
// 小程序更新检测
import {useUserStore} from "@/store/index.js";
import { useUserStore } from "@/store/index.js"
export function mpUpdate () {
  const updateManager = uni.getUpdateManager()
@@ -29,22 +39,22 @@
  })
}
export function getWebViewUrl(targetUrl, otherParams) {
  const userStore = useUserStore();
  const url = import.meta.env.VITE_APP_WEBVIEW_URL;
export function getWebViewUrl (targetUrl, otherParams) {
  const userStore = useUserStore()
  const url = "https://wrj.shuixiongit.com/drone-app-web-view/#/webViewWrapper"
  // 1. 处理用户参数
  const userParams = userStore?.userInfo ? JSON.stringify(userStore.userInfo) : '{}';
  const userParams = userStore?.userInfo ? JSON.stringify(userStore.userInfo) : '{}'
  // 2. 构建查询参数字符串
  let queryString = `params=${encodeURIComponent(userParams)}`;
  let queryString = `params=${encodeURIComponent(userParams)}`
  // 3. 处理 otherParams 对象
  if (otherParams && typeof otherParams === 'object') {
    Object.keys(otherParams).forEach(key => {
      const value = otherParams[key];
      const value = otherParams[key]
      if (value !== undefined && value !== null) {
        queryString += `&${key}=${encodeURIComponent(value)}`;
        queryString += `&${key}=${encodeURIComponent(value)}`
      }
    });
    })
  }
  // 4. 拼接完整 URL
  return `${url}${targetUrl}?${queryString}`;
  return `${url}${targetUrl}?${queryString}`
}