Selaa lähdekoodia

更改中文key

gemercheung 2 vuotta sitten
vanhempi
commit
ebb77fa807
39 muutettua tiedostoa jossa 258 lisäystä ja 185 poistoa
  1. 4 0
      packages/qjkankan-editor/.eslintrc.js
  2. 1 0
      packages/qjkankan-editor/package.json
  3. 1 1
      packages/qjkankan-editor/someData.json
  4. 0 0
      packages/qjkankan-editor/src/assets/videos/opa1_x264.mp4
  5. 0 0
      packages/qjkankan-editor/src/assets/videos/opa2_x264.mp4
  6. 0 0
      packages/qjkankan-editor/src/assets/videos/opa3_x264.mp4
  7. 0 0
      packages/qjkankan-editor/src/assets/videos/opa4_x264.mp4
  8. 0 0
      packages/qjkankan-editor/src/assets/videos/opa5_x264.mp4
  9. 0 1
      packages/qjkankan-editor/src/components/materialListInMaterialSelector.vue
  10. 0 1
      packages/qjkankan-editor/src/components/pulldownMenuInEditor.vue
  11. 6 3
      packages/qjkankan-editor/src/components/sceneGroupInEditor.vue
  12. 1 0
      packages/qjkankan-editor/src/core/hotspot.js
  13. 1 1
      packages/qjkankan-editor/src/lang/_en.json
  14. 23 21
      packages/qjkankan-editor/src/lang/_zh.json
  15. 1 1
      packages/qjkankan-editor/src/mixins/debuggerHelper.js
  16. 34 25
      packages/qjkankan-editor/src/views/base/Toolbar.vue
  17. 0 1
      packages/qjkankan-editor/src/views/base/customButtonSettings.vue
  18. 66 43
      packages/qjkankan-editor/src/views/base/openingAnimationSettings.vue
  19. 10 11
      packages/qjkankan-editor/src/views/hotspot/EditPanel.vue
  20. 1 0
      packages/qjkankan-editor/src/views/hotspot/HotSpotList.vue
  21. 11 10
      packages/qjkankan-editor/src/views/material/audio/audio.js
  22. 1 1
      packages/qjkankan-editor/src/views/material/audio/index.vue
  23. 13 12
      packages/qjkankan-editor/src/views/material/image/image.js
  24. 1 1
      packages/qjkankan-editor/src/views/material/image/index.vue
  25. 1 1
      packages/qjkankan-editor/src/views/material/pano/index.vue
  26. 12 12
      packages/qjkankan-editor/src/views/material/pano/pano.js
  27. 1 1
      packages/qjkankan-editor/src/views/material/video/index.vue
  28. 11 11
      packages/qjkankan-editor/src/views/material/video/video.js
  29. 6 1
      packages/qjkankan-view/.eslintrc.js
  30. 3 3
      packages/qjkankan-view/babel.config.js
  31. 1 0
      packages/qjkankan-view/package.json
  32. 1 3
      packages/qjkankan-view/public/showMobile.html
  33. 4 2
      packages/qjkankan-view/src/pages/show.js
  34. 6 8
      packages/qjkankan-view/src/pages/show.vue
  35. 1 0
      packages/qjkankan-view/src/pages/showMobile.js
  36. 12 7
      packages/qjkankan-view/src/pages/showMobile.vue
  37. 5 0
      packages/qjkankan-view/src/sdk/QJKanKan/modules/hotspot.js
  38. 1 3
      packages/qjkankan-view/src/utils/debuggerHelper.js
  39. 18 0
      yarn.lock

+ 4 - 0
packages/qjkankan-editor/.eslintrc.js

@@ -15,4 +15,8 @@ module.exports = {
     'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
     'no-unused-vars': 'off',
   },
+  "parserOptions": {
+    "ecmaVersion": 7,
+    "sourceType": "module"
+  }
 }

+ 1 - 0
packages/qjkankan-editor/package.json

@@ -17,6 +17,7 @@
   },
   "dependencies": {
     "@floating-ui/dom": "^0.5.4",
+    "@ungap/structured-clone": "^1.2.0",
     "@wangeditor/editor": "^5.1.23",
     "@wangeditor/editor-for-vue": "^1.0.2",
     "core-js": "^3.8.2",

+ 1 - 1
packages/qjkankan-editor/someData.json

@@ -39,7 +39,7 @@
   "remindTime": 1,
   "status": 0,
   "isShowOpeningAnimation": false,
-  "openingAnimationType": "小行星开场",
+  "openingAnimationType": "opa1",
   "backgroundMusic": {
     "id": "",
     "name": "",

packages/qjkankan-editor/src/assets/videos/小行星开场_x264.mp4 → packages/qjkankan-editor/src/assets/videos/opa1_x264.mp4


packages/qjkankan-editor/src/assets/videos/小行星巡游开场_x264.mp4 → packages/qjkankan-editor/src/assets/videos/opa2_x264.mp4


packages/qjkankan-editor/src/assets/videos/小行星缩放开场_x264.mp4 → packages/qjkankan-editor/src/assets/videos/opa3_x264.mp4


packages/qjkankan-editor/src/assets/videos/水平巡游开场_x264.mp4 → packages/qjkankan-editor/src/assets/videos/opa4_x264.mp4


packages/qjkankan-editor/src/assets/videos/水晶球开场_x264.mp4 → packages/qjkankan-editor/src/assets/videos/opa5_x264.mp4


+ 0 - 1
packages/qjkankan-editor/src/components/materialListInMaterialSelector.vue

@@ -35,7 +35,6 @@
             width: columnWidthList[idx],
           }"
         >
-          {{ item.name && $i18n.t(`zh_key.${item.name}`) }}
         </span>
       </div> -->
       <div

+ 0 - 1
packages/qjkankan-editor/src/components/pulldownMenuInEditor.vue

@@ -13,7 +13,6 @@
         :key="index"
         @click="onSelect(item)"
       >
-        <!-- {{ $i18n.t(`zh_key.${item}`) }} -->
         {{ item.label }}
       </button>
     </div>

+ 6 - 3
packages/qjkankan-editor/src/components/sceneGroupInEditor.vue

@@ -36,12 +36,15 @@
               ? groupNode.name
               : $i18n.t(`zh_key.${groupNode.name}`)
           "
-          >{{
+        >
+          <!-- {{
             $i18n.t(`zh_key.${groupNode.name}`).indexOf("zh_key") > -1
               ? groupNode.name
               : $i18n.t(`zh_key.${groupNode.name}`)
-          }}</span
-        >
+          }} -->
+          {{ groupNode.name }}
+          xxxx
+        </span>
         <i
           v-show="level === 1"
           class="iconfont icon-editor_list_add icon-add"

+ 1 - 0
packages/qjkankan-editor/src/core/hotspot.js

@@ -3,6 +3,7 @@
  *
  * 
  *  */
+
 import config from '../config'
 
 const initState = {

+ 1 - 1
packages/qjkankan-editor/src/lang/_en.json

@@ -740,7 +740,7 @@
     "no_display": "(No display)",
     "second": " Sec"
   },
-  "zh_key": {
+  "baseSetting": {
     "电话": "Tel",
     "链接": "Link",
     "弹出层打开": "Pop-up Notification",

+ 23 - 21
packages/qjkankan-editor/src/lang/_zh.json

@@ -741,31 +741,33 @@
     "no_display": "(不显示)",
     "second": "秒"
   },
-  "zh_key": {
+  "table": {
+    "material": "素材",
+    "name": "名称",
+    "fileSize": "大小",
+    "detail": "分辨率",
+    "createTime": "创建时间",
+    "updateTime": "修改时间"
+  },
+  "baseSetting": {
     "电话": "电话",
     "链接": "链接",
     "弹出层打开": "弹出层打开",
     "新窗口打开": "新窗口打开",
-    "小行星开场": "小行星开场",
-    "小行星巡游开场": "小行星巡游开场",
-    "小行星缩放开场": "小行星缩放开场",
-    "水平巡游开场": "水平巡游开场",
-    "水晶球开场": "水晶球开场",
-    "开场提示": "开场提示",
-    "开场动画": "开场动画",
-    "访问密码": "访问密码",
-    "自动巡游": "自动巡游",
-    "背景音乐": "背景音乐",
-    "自定义LOGO": "自定义LOGO",
-    "自定义遮罩": "自定义遮罩",
-    "自定义按钮": "自定义按钮",
-    "开场封面": "开场封面",
-    "素材": "素材",
-    "名称": "名称",
-    "大小": "大小",
-    "分辨率": "分辨率",
-    "创建时间": "创建时间",
-    "修改时间": "修改时间",
+    "opa1": "小行星开场",
+    "opa2": "小行星巡游开场",
+    "opa3": "小行星缩放开场",
+    "opa4": "水平巡游开场",
+    "opa5": "水晶球开场",
+    "openTips": "开场提示",
+    "openAnimate": "开场动画",
+    "password": "访问密码",
+    "cruise": "自动巡游",
+    "bgm": "背景音乐",
+    "logo": "自定义LOGO",
+    "customCover": "自定义遮罩",
+    "customButton": "自定义按钮",
+    "openCover": "开场封面",
     "封面": "封面",
     "场景标题": "场景标题",
     "拍摄时间": "拍摄时间",

+ 1 - 1
packages/qjkankan-editor/src/mixins/debuggerHelper.js

@@ -5,7 +5,7 @@ export const debuggerHelper = (show = true) => {
         // log.setColors({
         var css = "background: #28b561; color:#fff;font-size:14px;padding:5px;";
 
-        console.log(`%c 👉:当前版本::---> 1.3.2--${process.env.VUE_APP_DEBBUG_FLAG}`,css);
+        console.log(`%c 👉:当前版本::---> 1.4.0--${process.env.VUE_APP_DEBBUG_FLAG}`,css);
 
     }
 

+ 34 - 25
packages/qjkankan-editor/src/views/base/Toolbar.vue

@@ -73,33 +73,32 @@
           :class="{ active: activeTab === item }"
           @click="activeTab = item"
         >
-          {{ $i18n.t(`zh_key.${item}`) }}
+          {{ $i18n.t(`baseSetting.${item}`) }}
         </li>
       </menu>
+
       <div class="settings-view-wrapper">
         <OpeningTipSettings
-          v-show="activeTab === '开场提示'"
+          v-show="activeTab === 'openTips'"
         ></OpeningTipSettings>
         <OpeningAnimationSettings
-          v-show="activeTab === '开场动画'"
+          v-show="activeTab === 'openAnimate'"
         ></OpeningAnimationSettings>
-        <PasswordSettings v-show="activeTab === '访问密码'"></PasswordSettings>
+        <PasswordSettings v-show="activeTab === 'password'"></PasswordSettings>
         <AutoCruiseSettings
-          v-show="activeTab === '自动巡游'"
+          v-show="activeTab === 'cruise'"
         ></AutoCruiseSettings>
         <BackgroundMusicSettings
-          v-show="activeTab === '背景音乐'"
+          v-show="activeTab === 'bgm'"
         ></BackgroundMusicSettings>
-        <CustomLogoSettings
-          v-show="activeTab === '自定义LOGO'"
-        ></CustomLogoSettings>
+        <CustomLogoSettings v-show="activeTab === 'logo'"></CustomLogoSettings>
         <CustomMaskSettings
-          v-show="activeTab === '自定义遮罩'"
+          v-show="activeTab === 'customCover'"
         ></CustomMaskSettings>
         <CustomButtonSettings
-          v-show="activeTab === '自定义按钮'"
+          v-show="activeTab === 'customButton'"
         ></CustomButtonSettings>
-        <CoverBase v-show="activeTab === '开场封面'"></CoverBase>
+        <CoverBase v-show="activeTab === 'openCover'"></CoverBase>
       </div>
     </div>
 
@@ -145,19 +144,30 @@ export default {
   data() {
     return {
       isShowSettingCoverWindow: false,
+      // tabs: [
+      //   "开场提示",
+      //   "开场动画",
+      //   "开场封面",
+      //   "访问密码",
+      //   "自动巡游",
+      //   "背景音乐",
+      //   "自定义LOGO",
+      //   "自定义遮罩",
+      //   "自定义按钮",
+
+      // ],
       tabs: [
-        "开场提示",
-        "开场动画",
-        "开场封面",
-        "访问密码",
-        "自动巡游",
-        "背景音乐",
-        "自定义LOGO",
-        "自定义遮罩",
-        "自定义按钮",
-       
+        "openTips" /**开场提示 */,
+        "openAnimate" /**开场动画 */,
+        "openCover" /**开场封面 */,
+        "password" /**开场封面 */,
+        "cruise" /**自动巡游 */,
+        "bgm" /**背景音乐 */,
+        "logo" /**自定义LOGO */,
+        "customCover" /**自定义遮罩 */,
+        "customButton" /**自定义按钮 */,
       ],
-      activeTab: "开场提示",
+      activeTab: "openTips",
       jianjieLength: 0,
     };
   },
@@ -236,7 +246,7 @@ export default {
     }
     .ui-remark {
       margin-top: 16px;
-      line-height:16px;
+      line-height: 16px;
     }
   }
   .uc-r {
@@ -350,7 +360,6 @@ menu {
         top: 50%;
         left: 16px;
         bottom: initial;
-       
       }
     }
   }

+ 0 - 1
packages/qjkankan-editor/src/views/base/customButtonSettings.vue

@@ -105,7 +105,6 @@
           }}</span>
           <div style="margin-left: 16px">
             {{ getCurrentOpenMethodButton(item.openMethod).label }}
-            <!-- {{ $i18n.t(`zh_key.${item.openMethod}`) }} -->
           </div>
         </div>
       </div>

+ 66 - 43
packages/qjkankan-editor/src/views/base/openingAnimationSettings.vue

@@ -1,23 +1,46 @@
 <template>
   <div class="opening-animation-settings">
-    <span class="title">{{$i18n.t(`edit_settings.opening_setting`)}}</span>
-    <br>
+    <span class="title">{{ $i18n.t(`edit_settings.opening_setting`) }}</span>
+    <br />
     <div class="switch-wrapper">
-      <span class="label">{{$i18n.t('edit_settings.opening_animation_show')}}</span>
-      <Switcher :value="info.isShowOpeningAnimation" @change="onSwitcherChange"></Switcher>
+      <span class="label">{{
+        $i18n.t("edit_settings.opening_animation_show")
+      }}</span>
+      <Switcher
+        :value="info.isShowOpeningAnimation"
+        @change="onSwitcherChange"
+      ></Switcher>
     </div>
     <div class="btns-and-video">
       <div class="btn-wrapper">
-        <button v-for="item of openingTypeList" :key="item" class="opening-selection-btn"
+        <button
+          v-for="item of openingTypeList"
+          :key="item"
+          class="opening-selection-btn"
           :class="{ 'active-opening-type': info.openingAnimationType === item }"
-          @click="info.openingAnimationType = item">
-          {{$i18n.t(`zh_key.${item}`)}}
+          @click="info.openingAnimationType = item"
+        >
+          {{ $i18n.t(`baseSetting.${item}`) }}
         </button>
       </div>
       <div class="video-wrapper">
-        <video ref="opvideo" :src="require(`@/assets/videos/${info.openingAnimationType || '小行星开场'}_x264.mp4`)" autoplay
-          loop></video>
-          <i v-if="bofanging" @click="bofang" class="iconfont iconshow_playback"></i>
+        <video
+          ref="opvideo"
+          :src="
+            require(`@/assets/videos/${
+              !info.openingAnimationType.match(/[\u3400-\u9FBF]/)
+                ? info.openingAnimationType
+                : 'opa1'
+            }_x264.mp4`)
+          "
+          autoplay
+          loop
+        ></video>
+        <i
+          v-if="playing"
+          @click="bofang"
+          class="iconfont iconshow_playback"
+        ></i>
       </div>
     </div>
   </div>
@@ -33,50 +56,50 @@ export default {
   },
   data() {
     return {
-      openingTypeList: [
-        '小行星开场',
-        '小行星巡游开场',
-        '小行星缩放开场',
-        '水平巡游开场',
-        '水晶球开场',
-      ],
-      bofanging: true
-    }
+      // openingTypeList: [
+      //   '小行星开场',
+      //   '小行星巡游开场',
+      //   '小行星缩放开场',
+      //   '水平巡游开场',
+      //   '水晶球开场',
+      // ],
+      openingTypeList: ["opa1", "opa2", "opa3", "opa4", "opa5"],
+      playing: true,
+    };
   },
   computed: {
     ...mapGetters({
-      info: 'info'
-    })
+      info: "info",
+    }),
   },
   methods: {
-    bofang(){
-      this.$refs.opvideo.play()
+    bofang() {
+      this.$refs.opvideo.play();
     },
     onSwitcherChange(data) {
-      this.info.isShowOpeningAnimation = data
-    }
+      this.info.isShowOpeningAnimation = data;
+    },
   },
   mounted() {
     if (this.info.isShowOpeningAnimation === undefined) {
-      this.$set(this.info, 'isShowOpeningAnimation', false)
+      this.$set(this.info, "isShowOpeningAnimation", false);
     }
     if (!this.info.openingAnimationType) {
-      this.$set(this.info, 'openingAnimationType', this.openingTypeList[0])
+      this.$set(this.info, "openingAnimationType", this.openingTypeList[0]);
     }
 
-    this.$nextTick(()=>{
+    this.$nextTick(() => {
       console.log(this.$refs.opvideo);
 
-    this.$refs.opvideo && this.$refs.opvideo.addEventListener("playing", () => {
-      if (this.bofanging) {
-        this.bofanging = false;
-      }
-
+      this.$refs.opvideo &&
+        this.$refs.opvideo.addEventListener("playing", () => {
+          if (this.playing) {
+            this.playing = false;
+          }
+        });
     });
-  })
-
   },
-}
+};
 </script>
 
 <style lang="less" scoped>
@@ -87,7 +110,7 @@ export default {
 
   .title {
     font-size: 18px;
-    color: #FFFFFF;
+    color: #ffffff;
   }
 
   .switch-wrapper {
@@ -110,7 +133,7 @@ export default {
       .opening-selection-btn {
         width: 210px;
         height: 40px;
-        background: #1A1B1D;
+        background: #1a1b1d;
         border-radius: 2px;
         border: 1px solid #404040;
         margin-bottom: 16px;
@@ -121,7 +144,7 @@ export default {
         display: block;
 
         &::after {
-          content: '';
+          content: "";
           height: 100%;
           vertical-align: middle;
           display: inline-block;
@@ -129,7 +152,7 @@ export default {
       }
 
       .active-opening-type {
-        color: #0076F6;
+        color: #0076f6;
       }
     }
 
@@ -143,15 +166,15 @@ export default {
         height: 100%;
         object-fit: cover;
       }
-      .iconfont{
+      .iconfont {
         position: absolute;
         font-size: 36px;
         top: 50%;
         left: 50%;
-        transform: translate(-50%,-50%);
+        transform: translate(-50%, -50%);
         cursor: pointer;
       }
     }
   }
 }
-</style>
+</style>

+ 10 - 11
packages/qjkankan-editor/src/views/hotspot/EditPanel.vue

@@ -347,7 +347,6 @@ export default {
         default:
           return 0;
       }
-  
     },
     currentTitlePositionIdx() {
       switch (this.hotspot.titlePosition) {
@@ -601,16 +600,16 @@ export default {
     },
 
     cancel() {
-      // if (!(this.editTitle == this.$i18n.t("hotspot.edit"))) {
-      this.$confirm({
-        title: this.$i18n.t("tips.title"),
-        content: this.$i18n.t("hotspot.cancel_add_hotspot"),
-        ok: () => {
-          this.realCancel();
-        },
-      });
-
-      // }
+      if (!(this.editTitle == this.$i18n.t("hotspot.edit"))) {
+        // this.$confirm({
+        //   title: this.$i18n.t("tips.title"),
+        //   content: this.$i18n.t("hotspot.cancel_add_hotspot"),
+        //   ok: () => {
+        //     this.realCancel();
+        //   },
+        // });
+        this.realCancel();
+      }
     },
     realCancel() {
       this.$store.commit("SetHotspot", this.backupHotSpot);

+ 1 - 0
packages/qjkankan-editor/src/views/hotspot/HotSpotList.vue

@@ -266,6 +266,7 @@ export default {
       this.$msg.success(this.editTitle + this.$i18n.t("hotspot.success"));
 
       // window.g_hotspotCurrentScale = mapFontSize[data.fontSize] || 1;
+      debugger
       window.g_hotspotCurrentScale = Math.floor(data.fontSize / 12) || 1;
 
       let iidx = this.info.scenes.findIndex(

+ 11 - 10
packages/qjkankan-editor/src/views/material/audio/audio.js

@@ -1,39 +1,40 @@
 let data = [
   {
     key: 'ossPath',
-    name: '素材',
-    en: '素材',
+    name: 'material',
+    en: 'material',
     type:'audio',
     width: 150
   },
   {
     key: 'name',
-    name: '名称',
-    en: '名称',
+    name: 'name',
+    en: 'name',
     width: 240,
   },
   {
     key: 'detail',
+    name: 'detail',
     showWhenHover: true,
     canclick: true,
     width: 100,
   },
   {
     key: 'fileSize',
-    name: '大小',
-    en: '大小',
+    name: 'fileSize',
+    en: 'fileSize',
     width: 80,
   },
   {
     key: 'createTime',
-    name: '创建时间',
-    en: '创建时间',
+    name: 'createTime',
+    en: 'createTime',
     width: 150,
   },
   {
     key: 'updateTime',
-    name: '修改时间',
-    en: '修改时间',
+    name: 'updateTime',
+    en: 'updateTime',
     width: 150,
   },
 ]

+ 1 - 1
packages/qjkankan-editor/src/views/material/audio/index.vue

@@ -81,7 +81,7 @@
       >
         <!-- 插到tableList组件各个header插槽,并通过插槽的headerItem作用域拿到表头各项 -->
         <div slot-scope="{ headerItem }" slot="header">
-          {{ headerItem.name && $i18n.t(`zh_key.${headerItem.name}`) }}
+          {{ headerItem.name && $i18n.t(`table.${headerItem.name}`) }}
         </div>
         <div
           slot-scope="{ itemData, lineData, headerItem }"

+ 13 - 12
packages/qjkankan-editor/src/views/material/image/image.js

@@ -1,45 +1,46 @@
 let data = [
   {
     key: 'icon',
-    name: '素材',
-    en: '素材',
+    name: 'material',
+    en: 'material',
     type:'image',
     width: 80,
   },
   {
     key: 'name',
-    name: '名称',
-    en: '名称',
+    name: 'name',
+    en: 'name',
     width: 220,
   },
   {
     key: 'detail',
+    name: 'detail',
     showWhenHover: true,
     canclick: true,
     width: 80,
   },
   {
     key: 'fileSize',
-    name: '大小',
-    en: '大小',
+    name: 'fileSize',
+    en: 'fileSize',
     width: 80,
   },
   {
     key: 'dpi',
-    name: '分辨率',
-    en: '分辨率',
+    name: 'detail',
+    en: 'detail',
     width: 120,
   },
   {
     key: 'createTime',
-    name: '创建时间',
-    en: '创建时间',
+    name: 'createTime',
+    en: 'createTime',
     width: 150,
   },
   {
     key: 'updateTime',
-    name: '修改时间',
-    en: '修改时间',
+    name: 'updateTime',
+    en: 'updateTime',
     width: 150,
   },
 ]

+ 1 - 1
packages/qjkankan-editor/src/views/material/image/index.vue

@@ -81,7 +81,7 @@
       >
         <!-- 插到tableList组件各个header插槽,并通过插槽的headerItem作用域拿到表头各项 -->
         <div slot-scope="{ headerItem }" slot="header">
-          {{ headerItem.name && $i18n.t(`zh_key.${headerItem.name}`) }}
+          {{ headerItem.name && $i18n.t(`table.${headerItem.name}`) }}
         </div>
         <!-- 内容各单元格 -->
         <div

+ 1 - 1
packages/qjkankan-editor/src/views/material/pano/index.vue

@@ -81,7 +81,7 @@
       >
         <!-- 插到tableList组件各个header插槽,并通过插槽的headerItem作用域拿到表头各项 -->
         <div slot-scope="{ headerItem }" slot="header">
-          {{ headerItem.name && $i18n.t(`zh_key.${headerItem.name}`) }}
+          {{ headerItem.name && $i18n.t(`table.${headerItem.name}`) }}
         </div>
         <!-- 内容各单元格 -->
         <div

+ 12 - 12
packages/qjkankan-editor/src/views/material/pano/pano.js

@@ -1,41 +1,41 @@
 let data = [
   {
     key: 'icon',
-    name: '素材',
-    en: '素材',
+    name: 'material',
+    en: 'material',
     type:'image',
     width: 150,
   },
   {
     key: 'name',
-    name: '名称',
-    en: '名称',
+    name: 'name',
+    en: 'name',
     width: 240,
   },
   {
     key: 'detail',
-    name: '',
-    en:  '',
+    name: 'detail',
+    en:  'detail',
     showWhenHover: true,
     canclick: true,
     width: 100,
   },
   {
     key: 'fileSize',
-    name: '大小',
-    en: '大小',
+    name: 'fileSize',
+    en: 'fileSize',
     width: 80,
   },
   {
     key: 'createTime',
-    name: '创建时间',
-    en: '创建时间',
+    name: 'createTime',
+    en: 'createTime',
     width: 150,
   },
   {
     key: 'updateTime',
-    name: '修改时间',
-    en: '修改时间',
+    name: 'updateTime',
+    en: 'updateTime',
     width: 150,
   },
 ]

+ 1 - 1
packages/qjkankan-editor/src/views/material/video/index.vue

@@ -81,7 +81,7 @@
       >
         <!-- 插到tableList组件各个header插槽,并通过插槽的headerItem作用域拿到表头各项 -->
         <div slot-scope="{ headerItem }" slot="header">
-          {{ headerItem.name && $i18n.t(`zh_key.${headerItem.name}`) }}
+          {{ headerItem.name && $i18n.t(`table.${headerItem.name}`) }}
         </div>
         <!-- 内容各单元格 -->
         <div

+ 11 - 11
packages/qjkankan-editor/src/views/material/video/video.js

@@ -1,20 +1,20 @@
 let data = [
   {
     key: 'icon',
-    name: '素材',
-    en: '素材',
+    name: 'material',
+    en: 'material',
     type:'image',
     width: 150,
   },
   {
     key: 'name',
-    name: '名称',
-    en: '名称',
+    name: 'name',
+    en: 'name',
     width: 240,
   },
   {
     key: 'detail',
-    // name: '操作',
+    name: 'detail',
     // en:  '操作',
     showWhenHover: true,
     canclick: true,
@@ -22,20 +22,20 @@ let data = [
   },
   {
     key: 'fileSize',
-    name: '大小',
-    en: '大小',
+    name: 'fileSize',
+    en: 'fileSize',
     width: 80,
   },
   {
     key: 'createTime',
-    name: '创建时间',
-    en: '创建时间',
+    name: 'createTime',
+    en: 'createTime',
     width: 150,
   },
   {
     key: 'updateTime',
-    name: '修改时间',
-    en: '修改时间',
+    name: 'updateTime',
+    en: 'updateTime',
     width: 150,
   },
 ]

+ 6 - 1
packages/qjkankan-view/.eslintrc.js

@@ -1 +1,6 @@
-module.exports ={}
+module.exports = {
+    "parserOptions": {
+        "ecmaVersion": 7,
+        "sourceType": "module"
+    }
+}

+ 3 - 3
packages/qjkankan-view/babel.config.js

@@ -5,9 +5,9 @@ module.exports = {
     [
       '@babel/preset-env',
       {
-        'useBuiltIns': 'entry',
-        'corejs': 3, // 指定 corejs 的版本,如果package.json没有core-js,还需要另外安装
-        "targets":['and_uc 9']
+        useBuiltIns: 'usage',
+        corejs: '3.8.3', // 指定 corejs 的版本,如果package.json没有core-js,还需要另外安装
+        targets: ['and_uc 9']
       }
     ]
   ],

+ 1 - 0
packages/qjkankan-view/package.json

@@ -32,6 +32,7 @@
     "@babel/plugin-transform-runtime": "^7.21.4",
     "@babel/preset-env": "^7.21.5",
     "@babel/register": "^7.21.0",
+    "@babel/runtime-corejs3": "^7.21.5",
     "@intlify/vue-i18n-loader": "^4.2.0",
     "@vue/cli-plugin-babel": "~5.0.0",
     "@vue/cli-plugin-eslint": "~5.0.0",

+ 1 - 3
packages/qjkankan-view/public/showMobile.html

@@ -44,8 +44,6 @@
     <script src="<%= VUE_APP_STATIC_DIR %>/lib/swiper/swiper-bundle.min.js"></script>
     <!-- <script src="<%= VUE_APP_STATIC_DIR %>/lib/jssor/jssor.slider-28.1.0.min.js"></script> -->
     <script src="https://4dkk.4dage.com/v4-test/www/viewer/static/lib/vconsole.js"></script>
-    <script>
-      var vConsole = new window.VConsole();
-    </script>
+
   </body>
 </html>

+ 4 - 2
packages/qjkankan-view/src/pages/show.js

@@ -21,8 +21,10 @@ if (
   browser.detectEdge() ||
   browser.detectWeixin() ||
   browser.detectWeixinMiniProgram() ||
-  browser.detectAlipay() || 
-  browser.detectTT()
+  browser.detectAlipay() ||
+  browser.detectTT() ||
+  browser.detectTcTravel() ||
+  browser.detectDingDing()
 ) {
   App = Show;
 } else {

+ 6 - 8
packages/qjkankan-view/src/pages/show.vue

@@ -42,11 +42,11 @@ import { useI18n, getLocale } from "@/i18n";
 const { t } = useI18n({ useScope: "global" });
 
 const fixOpening = {
-  小行星开场: 1,
-  水平巡游开场: 2,
-  小行星巡游开场: 3,
-  水晶球开场: 4,
-  小行星缩放开场: 5,
+  opa1: 1,
+  opa2: 2,
+  opa3: 3,
+  opa4: 4,
+  opa5: 5,
 };
 
 const store = useStore();
@@ -184,13 +184,12 @@ onMounted(async () => {
           : 0,
         "autorotate.enabled": !!data.isAuto,
         "skin_settings.littleplanetintro":
-          fixOpening[data.openingAnimationType || "小行星开场"],
+          fixOpening[data.openingAnimationType] || 1,
         "skin_settings.lptswitch": unref(isShowOpeningAnimation),
       },
       passQueryParameters: true,
     });
 
-
     coverInfo.value = data.coverInfo || {};
     app.Scene.lock();
     //如果不需要开场封面就直接渲染
@@ -199,7 +198,6 @@ onMounted(async () => {
     }
 
     if (isHavePano) {
-
       app.Scene.on("sceneReady", () => {
         if (app.krpanoDom) {
           let defaultMask = `%SWFPATH%/skin/masking_${lang}.png`;

+ 1 - 0
packages/qjkankan-view/src/pages/showMobile.js

@@ -32,6 +32,7 @@ if (
 
 const local = getLocale();
 
+
 loadLocaleMessages(i18n, local).then(() => {
   setI18nLanguage(i18n, local);
 

+ 12 - 7
packages/qjkankan-view/src/pages/showMobile.vue

@@ -44,15 +44,14 @@ const { t } = useI18n({ useScope: "global" });
 const { initWxShare } = useWxShared();
 initWxShare();
 
-
 const coverInfo = ref({});
 
 const fixOpening = {
-  小行星开场: 1,
-  水平巡游开场: 2,
-  小行星巡游开场: 3,
-  水晶球开场: 4,
-  小行星缩放开场: 5,
+  opa1: 1,
+  opa2: 2,
+  opa3: 3,
+  opa4: 4,
+  opa5: 5,
 };
 
 const store = useStore();
@@ -79,6 +78,12 @@ onMounted(async () => {
     );
     return;
   }
+  //移动端开console
+  const Vconsle = browser.getURLParam("vlog");
+  if (Number(Vconsle) == 1) {
+    window.vConsole = new window.VConsole();
+  }
+
   let res = await checkWork();
   if (!res.data) {
     workEnable.value = res.data;
@@ -187,7 +192,7 @@ onMounted(async () => {
           : 0,
         "autorotate.enabled": !!data.isAuto,
         "skin_settings.littleplanetintro":
-          fixOpening[data.openingAnimationType || "小行星开场"],
+          fixOpening[data.openingAnimationType] || 1,
         "skin_settings.lptswitch": unref(isShowOpeningAnimation),
       },
       passQueryParameters: true,

+ 5 - 0
packages/qjkankan-view/src/sdk/QJKanKan/modules/hotspot.js

@@ -5,6 +5,11 @@
  *  */
 // import config from '../config'
 
+import 'core-js/modules/es.array.at'
+import 'core-js/modules/web.structured-clone'
+
+console.log('支持-structuredClone', 'structuredClone' in globalThis)
+
 const initState = {
     id: "",
     title: "",

+ 1 - 3
packages/qjkankan-view/src/utils/debuggerHelper.js

@@ -1,11 +1,9 @@
 
 export const debuggerHelper = (show = true) => {
-
     if (show) {
         // log.setColors({
         var css = "background: #28b561; color:#fff;font-size:14px;padding:5px;";
-
-        console.log(`%c 👉:当前版本::---> 1.3.2--${process.env.VUE_APP_DEBBUG_FLAG}`,css);
+        console.log(`%c 👉:当前版本::---> 1.4.0--${process.env.VUE_APP_DEBBUG_FLAG}`,css);
 
     }
 

+ 18 - 0
yarn.lock

@@ -1187,6 +1187,14 @@
   resolved "https://mirrors.cloud.tencent.com/npm/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310"
   integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==
 
+"@babel/runtime-corejs3@^7.21.5":
+  version "7.21.5"
+  resolved "http://192.168.0.47:4873/@babel/runtime-corejs3/-/runtime-corejs3-7.21.5.tgz#a6d4e132ab1cb2fae2354f02284ebb6e07b4f7d8"
+  integrity sha512-FRqFlFKNazWYykft5zvzuEl1YyTDGsIRrjV9rvxvYkUC7W/ueBng1X68Xd6uRMzAaJ0xMKn08/wem5YS1lpX8w==
+  dependencies:
+    core-js-pure "^3.25.1"
+    regenerator-runtime "^0.13.11"
+
 "@babel/runtime@^7.11.0", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4":
   version "7.21.0"
   resolved "https://mirrors.cloud.tencent.com/npm/@babel/runtime/-/runtime-7.21.0.tgz#5b55c9d394e5fcf304909a8b00c07dc217b56673"
@@ -2849,6 +2857,11 @@
   dependencies:
     "@types/node" "*"
 
+"@ungap/structured-clone@^1.2.0":
+  version "1.2.0"
+  resolved "http://192.168.0.47:4873/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406"
+  integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==
+
 "@uppy/companion-client@^2.2.2":
   version "2.2.2"
   resolved "https://mirrors.cloud.tencent.com/npm/@uppy/companion-client/-/companion-client-2.2.2.tgz#c70b42fdcca728ef88b3eebf7ee3e2fa04b4923b"
@@ -6381,6 +6394,11 @@ core-js-compat@^3.25.1, core-js-compat@^3.6.5, core-js-compat@^3.8.3:
   dependencies:
     browserslist "^4.21.5"
 
+core-js-pure@^3.25.1:
+  version "3.30.2"
+  resolved "http://192.168.0.47:4873/core-js-pure/-/core-js-pure-3.30.2.tgz#005a82551f4af3250dcfb46ed360fad32ced114e"
+  integrity sha512-p/npFUJXXBkCCTIlEGBdghofn00jWG6ZOtdoIXSJmAu2QBvN0IqpZXWweOytcwE6cfx8ZvVUy1vw8zxhe4Y2vg==
+
 core-js@^2.4.0, core-js@^2.5.0:
   version "2.6.12"
   resolved "https://mirrors.cloud.tencent.com/npm/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec"