bill 2 lat temu
rodzic
commit
6ae043a16a

+ 0 - 3
src/app.vue

@@ -110,7 +110,6 @@
 
 <script setup>
 import { initialRoom } from '@/store/room.js'
-import { useMusicPlayer } from "@/utils/sound";
 // import UiTags from "@/components/Tags";
 import GoodsList from "@/components/Tags/goods-list.vue";
 import Treasure from "@/components/Tags/treasure.vue";
@@ -141,7 +140,6 @@ let hashchangefn = () => {
   }
 };
 
-const musicPlayer = useMusicPlayer();
 
 let app = null;
 
@@ -433,7 +431,6 @@ onMounted(async () => {
     if (browser.getURLParam("roomId") && browser.getURLParam("vruserId") && browser.getURLParam("name")) {
       store.commit("showShoppingguide", true);
     }
-    useMusicPlayer();
   });
   app.Scene.on("panorama.videorenderer.resumerender", () => {
     musicPlayer.pause(true);

+ 4 - 6
src/components/Controls/Control.Mobile.vue

@@ -24,7 +24,6 @@ import common from "@/utils/common";
 import { useMusicPlayer } from "@/utils/sound";
 
 const store = useStore();
-const musicPlayer = useMusicPlayer();
 const metadata = computed(() => store.getters["scene/metadata"]);
 const flying = computed(() => store.getters["flying"]);
 const controls = computed(() => {
@@ -49,7 +48,6 @@ const panelPage = computed(() => {
 });
 
 
-
 const modeTips = ref("");
 const isCollapse = ref(false);
 const progressNum = ref(0);
@@ -128,7 +126,7 @@ const cancelTimer = () => {
 const hanlderTour = async () => {
   let player = await getApp().TourManager.player;
   player.on("play", (data) => {
-    musicPlayer.pause(true);
+    useMusicPlayer().pause(true);
     // if (tours.value.length > 1) {
     //     let time = getPartTime(data.partId)
     //     hanlderTourPartPlay(time)
@@ -136,14 +134,14 @@ const hanlderTour = async () => {
   });
   player.on("pause", (tours) => {
     console.log("pause", player);
-    musicPlayer.resume();
+    useMusicPlayer().resume();
 
     progressNum.value = 0;
     cancelTimer();
     store.commit("tour/setData", { isPlay: false });
   });
   player.on("end", (tours) => {
-    musicPlayer.resume();
+    useMusicPlayer().resume();
     progressNum.value = 100;
     store.commit("tour/setData", { isPlay: false });
     cancelTimer();
@@ -247,7 +245,7 @@ const onClickHandler = async () => {
   if (isPlay.value) {
     let player = await getApp().TourManager.player;
     player.pause();
-    musicPlayer.resume();
+    useMusicPlayer().resume();
   }
 };
 onMounted(() => {

+ 12 - 3
src/components/Controls/Panel/main-shop.vue

@@ -19,9 +19,10 @@
 
 <script setup>
 import SceneList from './scene-list.vue'
+import { useMusicPlayer } from "@/utils/sound";
 import { changeScene } from '@/store/room'
 import Icon from '@/components/icon/index.vue'
-import { ref } from 'vue'
+import { ref, onUnmounted } from 'vue'
 import { getApp } from '@/app'
 
 const show = ref(false)
@@ -54,6 +55,14 @@ const pause = async () => {
   player.pause()
 }
 
+const timeout = setTimeout(() => {
+  const a = useMusicPlayer()
+
+}, 2000)
+
+onUnmounted(() => clearTimeout(timeout))
+
+
 </script>
 
 <style lang="scss" scoped>
@@ -97,11 +106,11 @@ const pause = async () => {
   position: absolute;
   right: 10px;
   top: 50%;
-  transform: translateY(-50%);
+  transform: translateY(-50%) rotateZ(180deg);
   font-size: 12px;
 
   &.show {
-    transform: translateY(-50%) rotateZ(180deg);
+    transform: translateY(-50%);
   }
 }
 </style>

+ 1 - 1
src/components/Controls/Panel/scene-list.vue

@@ -29,7 +29,7 @@ const emit = defineEmits(['close', 'changeScene']);
 
 <style scoped lang="scss">
 .scene-list {
-  height: 80%;
+  max-height: 80%;
   background: rgba(0,0,0,0.8);
   border-radius: 10px 10px 0px 0px;
   bottom: 0;

+ 3 - 3
src/components/Information/View.Mobile.vue

@@ -56,7 +56,7 @@ if (share_url) {
 } else {
     share_url = `${location.origin}${location.pathname}?m=${browser.getURLParam('m')}`
 }
-const musicPlayer = useMusicPlayer()
+// const musicPlayer = useMusicPlayer()
 const store = useStore()
 const metadata = computed(() => store.getters['scene/metadata'])
 const controls = computed(() => {
@@ -126,8 +126,8 @@ onMounted(() => {
         window.Back = () => {
             onBack()
         }
-        musicPlayer.on('play', () => (showMusicPlaying.value = true))
-        musicPlayer.on('pause', () => (showMusicPlaying.value = false))
+        // musicPlayer.on('play', () => (showMusicPlaying.value = true))
+        // musicPlayer.on('pause', () => (showMusicPlaying.value = false))
     })
 })
 const onBack = () => {

+ 14 - 5
src/components/RTC/PageRtcLive.vue

@@ -38,7 +38,7 @@
 
         <!-- <i class="speakIcon"
            :class="{'dis':!user_info.IsWords}"></i> -->
-        <span v-if="user_info.IsWords">说点什么</span>
+        <span v-if="user_info.IsWords">说点什么~</span>
         <span v-if="!user_info.IsWords">已被禁言</span>
 
         <div
@@ -109,7 +109,7 @@
           <input
             id="input_msg"
             type="text"
-            maxlength="200"
+            maxlength="50"
             v-model.trim="text"
             :placeholder="`说点什么~`"
           />
@@ -140,7 +140,7 @@
               <div class="userMsg">
                 <div class="avatar">
                   <img
-                    :src="
+                    :src="user_info.Avatar ||
                       require('@/assets/images/rtcLive/avatar_small@2x.png')
                     "
                     alt=""
@@ -170,7 +170,7 @@
               <div class="userMsg">
                 <div class="avatar">
                   <img
-                    :src="
+                    :src="user_info.Avatar ||
                       require('@/assets/images/rtcLive/avatar_small@2x.png')
                     "
                     alt=""
@@ -244,6 +244,8 @@ import defaultAvatar from "@/assets/images/avatar_default.png";
 import { isMiniApp } from '@/env'
 import { initialMini } from './mini-platform'
 import Icon from '@/components/icon/index.vue'
+import { useMusicPlayer } from "@/utils/sound";
+
 
 const emit = defineEmits(["openDialog", "closeSocket"]);
 
@@ -471,6 +473,7 @@ const setUserJoin = async (res) => {
   // self.user_info = res.user;
   user_list.value = res.members.reduce(function (tempArr, item) {
     if (tempArr.findIndex((ele) => ele.UserId === item.UserId) === -1) {
+      console.log(item)
       tempArr.push(item);
     }
     return tempArr;
@@ -712,6 +715,7 @@ const startFollow = (app) => {
       userId: userId.value,
       roomId: roomId.value,
       role: role.value || "leader",
+      avatar: browser.getURLParam("avatar"),
       nickname: browser.getURLParam("name"),
     };
     socket.value.emit("join", params);
@@ -730,7 +734,7 @@ const startFollow = (app) => {
       return tempArr;
     }, []);
 
-    if (meblist.length > 50 && role.value == "customer") {
+    if (meblist.length > 30 && role.value == "customer") {
       Dialog.toast({ content: `房间已满员` });
       emit("closeSocket");
       return;
@@ -1539,4 +1543,9 @@ const changeScene = (scene) => {
 .cropper-box {
   z-index: 1000;
 }
+
+.disable {
+  opacity: .5;
+  pointer-events: none;
+}
 </style>

+ 1 - 1
src/components/RTC/dialog/index.vue

@@ -7,7 +7,7 @@
         <p class="dialog_desc">{{ props.desc }}</p>
         <div class="created_btn">
           <div class="end_cancel" @click="endLiveCancel">取消</div>
-          <div class="end_confirm" @click="endLiveConfirm">确认</div>
+          <div class="end_confirm" @click="endLiveConfirm">立即结束</div>
         </div>
       </div>
     </div>

+ 10 - 1
src/components/RTC/index.vue

@@ -12,13 +12,14 @@
 
 <script setup>
 import PageRtcLive from './PageRtcLive';
+import { useMusicPlayer } from "@/utils/sound";
 // import Draw from "./paint/Draw";
 import createdRoom from './dialog/createdRoom';
 import dialogIndex from './dialog/index.vue';
 import dialogShare from './dialog/share.vue';
 import { Dialog } from '@/global_components/';
 import browser from '@/utils/browser';
-import { onMounted, watch, computed, ref, nextTick } from 'vue';
+import { onMounted, watch, computed, ref, nextTick, watchEffect } from 'vue';
 import { useStore } from 'vuex';
 import { useApp, getApp } from '@/app';
 import { useCurrentMini } from './mini-platform'
@@ -38,6 +39,10 @@ const role = ref(browser.getURLParam('role'));
 const userName = ref(browser.getURLParam('name'));
 const socket = computed(() => store.getters['rtc/socket']);
 
+// const musicPlayer = useMusicPlayer();
+
+// useMusicPlayer().pause(true);
+
 const openDialog = (str, link) => {
   shareLink.value = link;
   dialog.value = str;
@@ -106,6 +111,7 @@ const createdConfirm = (str, link) => {
   //showguide();
 };
 
+
 const showguide = () => {
   if (!localStorage.getItem('user_guide')) {
     Dialog.confirm({
@@ -134,7 +140,10 @@ onMounted(() => {
     }
   });
   // showCreated.value = true;
+
 });
+
+
 </script>
 
 <style lang="scss" scoped>

+ 13 - 2
src/utils/sound.js

@@ -1,5 +1,6 @@
 import { computed, watchEffect } from 'vue'
 import { useStore } from 'vuex'
+import store from '@/store'
 import { useApp } from '@/app'
 import browser from './browser'
 // const sounds$ = document.createElement('div')
@@ -25,6 +26,7 @@ const retryPlay = player => {
 
 class AudioPlayer extends KanKan.MITT.Emiter {
     constructor(name) {
+        console.error('===>')
         super()
         // const loadeddata = e => {
         //     this.duration = this.sound.duration
@@ -107,9 +109,11 @@ class AudioPlayer extends KanKan.MITT.Emiter {
         }
     }
     play() {
+        console.error('play')
         this.sound.play()
     }
     pause(fromOther) {
+        console.error('pause')
         if (!this.isPlay) {
             return
         }
@@ -137,7 +141,7 @@ class AudioPlayer extends KanKan.MITT.Emiter {
 class MusicPlayer extends AudioPlayer {
     constructor() {
         super('music')
-        const store = useStore()
+        // const store = useStore()
         const source = computed(() => {
             let music = store.getters['scene/musicURL']
             if (music) {
@@ -164,6 +168,7 @@ class MusicPlayer extends AudioPlayer {
 
         this.isLock = true
         this.watchPlay = () => {
+            console.error('playyyyyy')
             if (this.isLock) {
                 return
             }
@@ -225,11 +230,17 @@ class SoundPlayer extends AudioPlayer {
 export function useMusicPlayer() {
     if (useMusicPlayer.player === void 0) {
         useMusicPlayer.player = new MusicPlayer()
-        useApp().then(app => {
+        useApp().then(async app => {
+            if (app.Scene.loaded) {
+                useMusicPlayer.player.isLock = false
+                useMusicPlayer.player.watchPlay()
+
+            } else {
             app.Scene.on('loaded', () => {
                 useMusicPlayer.player.isLock = false
                 useMusicPlayer.player.watchPlay()
             })
+        }
         })
     }
     return useMusicPlayer.player