tremble 3 anni fa
parent
commit
4077c3a837

+ 2 - 2
packages/qjkankan-editor/package.json

@@ -1,6 +1,6 @@
 {
-  "name": "@qjkankan/editor",
-  "version": "1.2.0",
+  "name": "qjkankan",
+  "version": "0.1.0",
   "private": true,
   "scripts": {
     "serve": "vue-cli-service serve",

+ 1 - 0
packages/qjkankan-editor/src/api/index.js

@@ -37,6 +37,7 @@ export function getUserInfo(ok, no) {
  */
  export function getPanoInfo(data, ok, no) {
     return http.get(`${ossUrl}/720yun_fd_manage/${data||number()}/someData.json?_=${Math.random()}`, {}, ok, no)
+    
 }
 
 

+ 121 - 91
packages/qjkankan-editor/src/framework/show/index.vue

@@ -1,28 +1,49 @@
 <template>
   <div class="panocon">
     <template v-if="showInfo">
-      <iframe allowfullscreen="true" v-if="activeItem.type == '4dkk'" :src="`/spc.html?m=${activeItem.sceneCode}&lang=zh`" frameborder="0"></iframe>
-      <div v-show="activeItem.type != '4dkk'" id="pano"></div>
+      <iframe allowfullscreen="true" v-if="activeItem.type=='4dkk'" 
+      :src="`/spc.html?m=${activeItem.sceneCode}&lang=zh`" frameborder="0"></iframe>
+      <div v-show="activeItem.type!='4dkk'" id="pano"></div>
 
-      <div class="pano-logo" v-if="showInfo.isLogo && activeItem.type != '4dkk'">
-        <img :src="showInfo.logo || require('@/assets/images/default/img_logoshow@2x.png')" alt="" />
+      <div class="pano-logo" v-if="showInfo.isLogo&&activeItem.type!='4dkk'">
+        <img :src="showInfo.logo||require('@/assets/images/default/img_logoshow@2x.png')" alt="" />
       </div>
 
-      <div class="oper-tips" :class="{ hidetips: !showTips }" v-if="localRemind">
-        <img :src="showInfo.pcIcon || require('@/assets/images/default/show/img_tipspc_default.png')" alt="" />
+
+      <div
+        class="oper-tips"
+        :class="{ hidetips: !showTips }"
+        v-if="localRemind"
+      >
+        <img
+          :src="
+            showInfo.pcIcon ||
+            require('@/assets/images/default/show/img_tipspc_default.png')
+          "
+          alt=""
+        />
       </div>
 
       <list v-if="canLoad" @select="handleSelect" :select="activeItem"></list>
-      <password :bg="showInfo.icon" :show="showPassword" @submit="handlePassword" @close="showPassword = false" />
+      <password
+        :bg="showInfo.icon"
+        :show="showPassword"
+        @submit="handlePassword"
+        @close="showPassword = false"
+      />
       <popup :title="'简介'" :show="showIntro" @close="showIntro = false">
         <div slot="content" class="introcon">
           {{ showInfo.description || "暂无简介" }}
         </div>
       </popup>
 
-      <preview :item="currentHotspot" :show="showPreview" @close="showPreview = false" />
+      <preview
+        :item="currentHotspot"
+        :show="showPreview"
+        @close="showPreview = false"
+      />
 
-      <ul class="aside" v-if="activeItem.type != '4dkk'">
+      <ul class="aside" v-if="activeItem.type!='4dkk'">
         <li v-for="(item, i) in aside" :key="i">
           <span @click="handleItem(item)">
             <i class="iconfont" :class="item.icon"></i>
@@ -32,21 +53,23 @@
     </template>
     <template v-else>
       <div class="hasDel" v-if="loadFinish">
-        <div>
-          <img :src="$noresult" alt="" />
-          <p>作品已被删除</p>
-        </div>
+      <div>
+        <img :src="$noresult" alt="">
+        <p>作品已被删除</p>
       </div>
+    </div>
+
     </template>
   </div>
 </template>
 
 <script>
 import * as krfn from "@/core/index.js";
-import { getPanoInfo, checkPassword, checkWork } from "@/api";
+import { getPanoInfo, checkPassword,checkWork } from "@/api";
 import password from "./popup/password";
 import preview from "./popup/preview";
-import { $smallWaiting } from "@/components/shared/loading";
+import { $smallWaiting } from '@/components/shared/loading'
+
 
 import popup from "./popup/";
 import { mapGetters } from "vuex";
@@ -70,10 +93,10 @@ export default {
   data() {
     return {
       showPreview: false,
-      isFullscreen: false,
+      isFullscreen:false,
       showTips: false,
       canLoad: false,
-      loadFinish: false,
+      loadFinish:false,
       showPassword: false,
       showIntro: false,
       localRemind: false,
@@ -100,37 +123,37 @@ export default {
   },
   methods: {
     onFullScreen() {
-      let element = document.documentElement;
-      if (this.isFullscreen) {
-        if (document.exitFullscreen) {
-          document.exitFullscreen();
-        } else if (document.webkitCancelFullScreen) {
-          document.webkitCancelFullScreen();
-        } else if (document.mozCancelFullScreen) {
-          document.mozCancelFullScreen();
-        } else if (document.msExitFullscreen) {
-          document.msExitFullscreen();
-        }
-      } else {
-        if (element.requestFullscreen) {
-          element.requestFullscreen();
-        } else if (element.webkitRequestFullScreen) {
-          element.webkitRequestFullScreen();
-        } else if (element.mozRequestFullScreen) {
-          element.mozRequestFullScreen();
-        } else if (element.msRequestFullscreen) {
-          element.msRequestFullscreen();
+        let element = document.documentElement;
+        if (this.isFullscreen) {
+            if (document.exitFullscreen) {
+                document.exitFullscreen();
+            } else if (document.webkitCancelFullScreen) {
+                document.webkitCancelFullScreen();
+            } else if (document.mozCancelFullScreen) {
+                document.mozCancelFullScreen();
+            } else if (document.msExitFullscreen) {
+                document.msExitFullscreen();
+            }
+        } else {
+            if (element.requestFullscreen) {
+                element.requestFullscreen();
+            } else if (element.webkitRequestFullScreen) {
+                element.webkitRequestFullScreen();
+            } else if (element.mozRequestFullScreen) {
+                element.mozRequestFullScreen();
+            } else if (element.msRequestFullscreen) {
+                element.msRequestFullscreen();
+            }
         }
-      }
-      // 改变当前全屏状态
-      this.isFullscreen = !this.isFullscreen;
-    },
+          // 改变当前全屏状态
+        this.isFullscreen = !this.isFullscreen;
+      },
     handleItem(data) {
       if (data.id == "about") {
         this.showIntro = true;
       }
       if (data.id == "full") {
-        this.onFullScreen();
+        this.onFullScreen()
       }
       if (data.id == "vr") {
         var krpano = document.getElementById("krpanoSWFObject");
@@ -148,7 +171,7 @@ export default {
           if (res.code == 0) {
             this.showPassword = false;
             this.canLoad = true;
-          }
+          } 
         }
       );
     },
@@ -170,13 +193,14 @@ export default {
           }
         });
       });
-      tmp = this.$unique(tmp);
+      tmp = this.$unique(tmp)
 
       this.showInfo.catalogs = tmp;
       let rootmp = [];
       tmp.forEach((item) => {
         this.showInfo.catalogRoot.forEach((sub) => {
-          sub.children = this.$unique(sub.children);
+
+          sub.children = this.$unique(sub.children)
 
           if (sub.children.indexOf(item.id) > -1) {
             rootmp.push(sub);
@@ -184,16 +208,18 @@ export default {
         });
       });
 
-      rootmp = this.$unique(rootmp);
 
-      let sortArr = this.showInfo.catalogRoot.map((item) => item.name);
-      rootmp.sort((a, b) => {
-        return sortArr.indexOf(a.name) - sortArr.indexOf(b.name);
-      });
+      rootmp = this.$unique(rootmp)
+
+      let sortArr = this.showInfo.catalogRoot.map(item=>item.name)
+      rootmp.sort((a,b)=>{
+        return sortArr.indexOf(a.name) - sortArr.indexOf(b.name)
+      })
+
 
       this.showInfo.catalogRoot = rootmp.map((item) => {
         let temp = [];
-        item.children = this.$unique(item.children);
+        item.children = this.$unique(item.children)
         item.children.forEach((sub) => {
           tmp.forEach((jj) => {
             if (jj.id == sub) {
@@ -207,15 +233,15 @@ export default {
         };
       });
 
-      this.showInfo.catalogs = tmp;
+      this.showInfo.catalogs = tmp
 
-      let cid = "c_" + this.$randomWord(true, 8, 8);
+      let cid = 'c_'+this.$randomWord(true,8,8)
 
       if (this.showInfo.catalogRoot.length <= 0) {
         this.showInfo.catalogRoot.push({
-          id: "r_" + this.$randomWord(true, 8, 8),
+          id: 'r_'+this.$randomWord(true,8,8),
           name: "全部场景",
-          children: [cid],
+          children:[cid]
         });
       }
 
@@ -227,25 +253,28 @@ export default {
       }
 
       if (this.showInfo.firstScene) {
-        this.showInfo.firstScene = this.showInfo.scenes.find((item) => item.sceneCode == this.showInfo.firstScene.sceneCode);
+        this.showInfo.firstScene = this.showInfo.scenes.find(item=>item.sceneCode==this.showInfo.firstScene.sceneCode)
       }
 
       this.$store.commit("SetShowInfo", this.showInfo);
     },
 
     getSceneInfo() {
-      checkWork("", (data) => {
+      checkWork("",data=>{
         if (data.data) {
-          getPanoInfo("", (res) => {
-            this.$store.commit("SetShowInfo", res);
-            this.fixData();
-            this.loadFinish = true;
-          });
-        } else {
-          this.loadFinish = true;
+          getPanoInfo(
+            "",
+            (res) => {
+              this.$store.commit("SetShowInfo", res);
+              this.fixData()
+              this.loadFinish = true
+            }
+          );
+        } else{
+          this.loadFinish = true
         }
-      });
-    },
+      })
+    }
   },
   watch: {
     currentHotspot: {
@@ -267,7 +296,7 @@ export default {
     canLoad(newVal) {
       if (newVal) {
         setTimeout(() => {
-          this.showTips = this.localRemind;
+          this.showTips = this.localRemind
           setTimeout(() => {
             this.showTips = false;
           }, this.showInfo.remindTime * 1000);
@@ -279,20 +308,21 @@ export default {
       immediate: true,
       handler: function (newVal) {
         if (newVal) {
-          document.title = newVal.name || "无标题";
-          let locoR = "localRemind" + newVal.id;
+          document.title = newVal.name || '无标题'
+          let locoR = "localRemind"+newVal.id
           if (!newVal.description) {
-            this.aside.shift();
+            this.aside.shift()
           }
-          if (newVal.isRemind == 1) {
-            this.localRemind = localStorage.getItem(locoR) == 1 ? false : true;
+          if (newVal.isRemind==1) {
+            this.localRemind = localStorage.getItem(locoR) == 1 ? false : true
             localStorage.setItem(locoR, 1);
-          } else {
+          }
+          else{
             this.localRemind = true;
             localStorage.setItem(locoR, 0);
           }
           if (this.showInfo.firstScene) {
-            if (this.showInfo.firstScene.type == "4dkk") {
+            if (this.showInfo.firstScene.type == '4dkk') {
               this.localRemind = false;
             }
           }
@@ -302,19 +332,19 @@ export default {
     },
     activeItem: {
       handler(newVal) {
-        this.currentHotspot = "";
+        this.currentHotspot = ''
         $("#pano").empty();
         window.vrInitFn = () => {
-          $smallWaiting.hide();
+          $smallWaiting.hide()
           var krpano = document.getElementById("krpanoSWFObject");
           __krfn.utils.initHotspot(krpano, newVal && newVal.someData, false);
         };
         window.vrViewFn = () => {
           try {
-            let tmp = newVal.initVisual || {};
+            let tmp = newVal.initVisual||{};
             var krpano = document.getElementById("krpanoSWFObject");
-            krpano.set("view.vlookat", tmp.vlookat || 0);
-            krpano.set("view.hlookat", tmp.hlookat || 0);
+            krpano.set("view.vlookat", tmp.vlookat||0);
+            krpano.set("view.hlookat", tmp.hlookat||0);
             krpano.set("autorotate.enabled", Boolean(this.showInfo.isAuto));
           } catch (error) {
             error;
@@ -325,13 +355,13 @@ export default {
           "events[skin_events].onloadcomplete": "js(window.vrInitFn());",
         };
         if (newVal) {
-          if (newVal.type == "4dkk") {
-            removepano("#pano");
-            $("#pano").empty();
-            return;
+          if (newVal.type=='4dkk') {
+              removepano("#pano");
+              $("#pano").empty();
+              return
           }
           removepano("#pano");
-          $smallWaiting.show();
+          $smallWaiting.show()
 
           embedpano({
             // xml: "%HTMLPATH%/static/template/tour.xml",
@@ -351,8 +381,8 @@ export default {
     window.__krfn = __krfn;
 
     this.$bus.on("clickHotspot", (data) => {
-      let someData = this.activeItem.someData;
-      if (typeof someData == "string") {
+      let someData = this.activeItem.someData
+      if (typeof someData == 'string') {
         someData = JSON.parse(this.activeItem.someData);
       }
       let idx = someData.hotspots.findIndex((item) => item.name == data);
@@ -368,20 +398,20 @@ export default {
 .panocon {
   width: 100%;
   height: 100%;
-  .hasDel {
+  .hasDel{
     background: #fff;
     width: 100%;
     height: 100%;
     position: relative;
-    > div {
+    >div{
       position: absolute;
       top: 50%;
       left: 50%;
-      transform: translate(-50%, -50%);
+      transform: translate(-50%,-50%);
       color: #909090;
       text-align: center;
       font-size: 18px;
-      > p {
+      >p{
         margin-top: 20px;
       }
     }
@@ -390,7 +420,7 @@ export default {
     width: 100%;
     height: 100%;
   }
-  > iframe {
+  >iframe{
     width: 100%;
     height: 100%;
   }