Procházet zdrojové kódy

feat: 创建 demo 分支

chenlei před 2 roky
rodič
revize
a266bde69e
3 změnil soubory, kde provedl 98 přidání a 0 odebrání
  1. 5 0
      package.json
  2. binární
      public/favicon/favicon-demo.ico
  3. 93 0
      src/views/home/index.demo.tsx

+ 5 - 0
package.json

@@ -6,6 +6,11 @@
     "serve": "cross-env TITLE=大理洱海科普馆 vue-cli-service serve",
     "build:test": "cross-env TITLE=大理洱海科普馆 vue-cli-service build",
     "push:test": "cross-env node ./scripts/publish.js",
+
+    "serve:demo": "cross-env SCENE=demo TITLE=demo vue-cli-service serve",
+    "build:demo:test": "cross-env SCENE=demo TITLE=demo vue-cli-service build",
+    "push:demo": "cross-env SCENE=demo node ./scripts/publish.js",
+
     "lint": "vue-cli-service lint",
     "prepare": "husky install"
   },

binární
public/favicon/favicon-demo.ico


+ 93 - 0
src/views/home/index.demo.tsx

@@ -0,0 +1,93 @@
+import { defineComponent, ref } from 'vue';
+import JsScript from '@/components/js-script';
+import Title from './components/title';
+import WebVr from './components/web-vr';
+import Other from './components/other';
+import Guide from './components/guide';
+import Vrcon from './components/vrcon';
+import Menu from './components/menu';
+import GuiLoading from './components/gui-loading';
+import Popup from './components/popup';
+import HotSpotList from './components/hot-spot-list';
+import './index.scss';
+
+export default defineComponent({
+  name: 'home',
+  components: {
+    Title,
+    WebVr,
+    Other,
+    Vrcon,
+    GuiLoading,
+    JsScript,
+    Popup,
+  },
+  setup() {
+    // manage 配置是否加载完成
+    const configLoaded = ref(false);
+
+    return {
+      configLoaded,
+    };
+  },
+  render() {
+    return (
+      <div class="home">
+        {/* 进度条加载 */}
+        <GuiLoading />
+
+        {/* 加载初始页面 */}
+        <div id="gui-thumb" />
+
+        {/* 热点弹出框 */}
+        <Popup />
+
+        {/* 场景canvs主容器 */}
+        <div id="player" />
+
+        {/* 底部菜单 */}
+        <div id="gui-parent">
+          {/* 热点气泡 */}
+          <div id="hot" />
+
+          <div id="gui" style="display: none;">
+            {/* 标题 */}
+            <Title />
+
+            {/* 热点列表 */}
+            <HotSpotList />
+
+            {/* 底部菜单 */}
+            <Menu />
+
+            {/* 导览 */}
+            <Guide />
+
+            <div class="home_logo">
+              <img src="images/btm_logo.png" />
+              <span>提供技术支持-demo</span>
+            </div>
+          </div>
+
+          <WebVr />
+          <Vrcon />
+          <Other />
+        </div>
+
+        {/* TODO: 没有控制权,耦合严重;放在此处为了防止元素未渲染导致报错 */}
+        <JsScript src="/js/manage.js" onLoad={() => (this.configLoaded = true)} />
+        {this.configLoaded && (
+          <>
+            <JsScript src="/js/Hot.js" />
+            <JsScript src="/js/main_2020_show.js" />
+            {/* 延迟加载 */}
+            <JsScript src="/js/lib/player-0.0.12.min.js" />
+            <JsScript src="/js/lib/Tween.js" />
+            <JsScript src="/js/SpecialScene.js" />
+            <JsScript src="/js/loadCAD.js" />
+          </>
+        )}
+      </div>
+    );
+  },
+});