Pārlūkot izejas kodu

更新,update

tremble 3 gadi atpakaļ
vecāks
revīzija
97e09a128b

BIN
src/assets/images/icon/img_scene_share.png


+ 56 - 2
src/components/RTC/PageRtcLive.vue

@@ -22,7 +22,7 @@
         <div v-if="isBrushes && user_info.Role == 'leader'" @click="onDrawUndo" class="brushesBack" :class="{ disabled: !canUndo }"></div>
         <div v-if="user_info.Role == 'leader'" @click="onDraw(!isBrushes)" :class="{ brushesed: isBrushes }" class="brushes"></div>
 
-        <div v-if="user_list.length < 5" class="invitation" @click="openDialog('dialogShare', shareLink)"></div>
+        <div v-if="user_list.length < 5" class="invitation" @click="onClickShare"></div>
         <div v-if="role == 'leader'" class="members" @click="openMember"></div>
         <div v-if="!disableMic" @click="handleMuteAduio" :class="{ mic_off: audioMuted, disabled: !audioDeviceId }" class="mic_on"></div>
         <div v-if="disableMic" class="mic_no" :class="{ disabled: !audioDeviceId }"></div>
@@ -85,6 +85,12 @@
       </div>
     </div>
   </div>
+
+  <teleport :to="`#app`">
+    <div v-if="showShare" @click="showShare = false" class="sharetip">
+      <img @click.stop :src="require('@/assets/images/icon/img_scene_share.png')" alt="" />
+    </div>
+  </teleport>
 </template>
 
 <script setup>
@@ -155,6 +161,7 @@ const isBrushes = ref(false);
 const showInput = ref(false);
 const showMember = ref(false);
 const animateActive = ref(false);
+const showShare = ref(false);
 
 const audioMuted = ref(false);
 const videoMuted = ref(false);
@@ -190,6 +197,24 @@ const tags = computed(() => {
   return store.getters["tag/tags"] || [];
 });
 
+const onClickShare = () => {
+  if (browser.detectWeixin()) {
+    //ios的ua中无miniProgram,但都有MicroMessenger(表示是微信浏览器)
+    wx.miniProgram.getEnv((res) => {
+      if (res.miniprogram) {
+        showShare.value = true;
+        wx.miniProgram.postMessage({ data: { title: "【好友推薦】一起雲逛店吧~", imageUrl: "https://glp-vr.cdfmembers.com/cdf/file/91dd5305525f463286f03a31abd1c154.jpg", h5Url: shareLink.value } });
+        //在小程序里
+      } else {
+        openDialog("dialogShare", shareLink.value);
+        // 不在小程序里
+      }
+    });
+  } else {
+    openDialog("dialogShare", shareLink.value);
+  }
+};
+
 const userGetOut = (item, i) => {
   socket.value &&
     socket.value.emit("action", {
@@ -425,13 +450,25 @@ const userCanSpeak = (item) => {
 };
 
 const onGetOuT = (data) => {
-  console.log(data.id, "data.id == user_info.value.UserId,", user_info.value.UserId);
   if (data.id == user_info.value.UserId) {
     emit("closeSocket");
     Dialog.toast({ content: `您已被移除` });
   }
 };
 
+watch(
+  user_list,
+  () => {
+    if (role.value == "leader") {
+      all_mute_mic.value = !user_list.value.some((item) => !item.IsMuted && item.Role == "customer");
+      console.log(all_mute_mic.value, "user_list,valueuser_list,valueuser_list,valueuser_list,valueuser_list,valueuser_list,value");
+    }
+  },
+  {
+    deep: true,
+  }
+);
+
 const startFollow = (app) => {
   app.Connect.follow.start({ follow: role.value == "customer" });
 
@@ -1120,4 +1157,21 @@ onMounted(() => {
     }
   }
 }
+.sharetip {
+  position: fixed;
+  z-index: 99999;
+  width: 100%;
+  height: 100%;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  top: 0;
+  background-color: rgba($color: #000000, $alpha: 0.66);
+  > img {
+    position: absolute;
+    right: 10%;
+    top: 0;
+    max-width: 40vw;
+  }
+}
 </style>

+ 2 - 2
src/components/RTC/Trtccom.vue

@@ -131,7 +131,7 @@ async function createLocalStream() {
     isLeader && localStream.setVideoProfile("480p");
 
     await localStream.initialize();
-    audioMuted.value && localStream.muteAudio();
+    props.audioMuted && localStream.muteAudio();
   } catch (error) {
     console.log(error, "createStream");
   }
@@ -143,7 +143,7 @@ async function handleJoin() {
   }
 
   try {
-    let res = await apis.getSign({ userId: store.getters["rtc/userId"] })
+    let res = await apis.getSign({ userId: store.getters["rtc/userId"] });
     localClient = TRTC.createClient({
       mode: "rtc",
       sdkAppId: parseInt(store.getters["rtc/sdkAppId"], 10),