From 1b75e086e666a4b5ce5d89fd1e319673c1439059 Mon Sep 17 00:00:00 2001 From: lVAL Date: Mon, 4 Jan 2021 16:13:19 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AE=98=E7=BD=91=EF=BC=8C?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E5=93=8D=E5=BA=94=E5=BC=8F=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=A4=9A=E7=AB=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 104 +- package.json | 5 +- src/App.vue | 3 +- src/components/eButtonGroup/index.vue | 20 +- src/components/eImageCard/index.vue | 14 +- src/components/eInlineBuy/inline-buy.vue | 20 +- src/components/eLoading/index.js | 11 + src/components/eLoading/src/directive.js | 133 ++ src/components/eLoading/src/index.js | 106 ++ src/components/eLoading/src/loading.vue | 41 + src/components/eLoading/utils/after-leave.js | 27 + src/components/eLoading/utils/dom.js | 227 +++ src/components/eLoading/utils/merge.js | 15 + src/components/eLoading/utils/popper.js | 1276 +++++++++++++++++ src/components/eLoading/utils/popup/index.js | 218 +++ .../eLoading/utils/popup/popup-manager.js | 194 +++ .../eLoading/utils/scrollbar-width.js | 29 + src/components/eLogo/index.vue | 40 - src/components/ePreviewPdf/index.vue | 8 +- src/components/eSearch/search.vue | 8 +- src/components/eVideoCard/index.vue | 8 +- .../Layout => layout}/eFooter/eCopy.vue | 53 +- .../Layout => layout}/eFooter/eCustom.vue | 148 +- .../Layout => layout}/eFooter/index.vue | 2 +- src/layout/eHeader/eMenuItem.vue | 48 + src/layout/eHeader/eMenuList.vue | 37 + src/layout/eHeader/index.vue | 89 ++ src/layout/index.vue | 25 + src/main.js | 12 +- src/router/index.js | 50 +- src/store/index.js | 11 - src/style/iconfont.css | 2 +- src/views/About.vue | 49 +- src/views/Error/401.vue | 6 +- src/views/Exhibition/index.vue | 112 +- src/views/Home/index.vue | 3 +- src/views/Home/main/eHonor.vue | 77 +- src/views/Home/main/eProduct.vue | 175 +-- src/views/Home/main/ePropaganda.vue | 52 +- src/views/Home/main/eRecommend.vue | 248 ++-- src/views/Honor/index.vue | 26 +- src/views/Layout/eHeader/eMenuItem.vue | 83 -- src/views/Layout/eHeader/eMenuList.vue | 137 -- src/views/Layout/eHeader/index.vue | 161 --- src/views/Layout/index.vue | 44 - src/views/PreviewImage/eList.vue | 35 +- src/views/PreviewImage/index.vue | 99 +- src/views/Relation.vue | 14 +- vue.config.js | 5 +- 49 files changed, 3108 insertions(+), 1202 deletions(-) create mode 100644 src/components/eLoading/index.js create mode 100644 src/components/eLoading/src/directive.js create mode 100644 src/components/eLoading/src/index.js create mode 100644 src/components/eLoading/src/loading.vue create mode 100644 src/components/eLoading/utils/after-leave.js create mode 100644 src/components/eLoading/utils/dom.js create mode 100644 src/components/eLoading/utils/merge.js create mode 100644 src/components/eLoading/utils/popper.js create mode 100644 src/components/eLoading/utils/popup/index.js create mode 100644 src/components/eLoading/utils/popup/popup-manager.js create mode 100644 src/components/eLoading/utils/scrollbar-width.js delete mode 100644 src/components/eLogo/index.vue rename src/{views/Layout => layout}/eFooter/eCopy.vue (54%) rename src/{views/Layout => layout}/eFooter/eCustom.vue (51%) rename src/{views/Layout => layout}/eFooter/index.vue (93%) create mode 100644 src/layout/eHeader/eMenuItem.vue create mode 100644 src/layout/eHeader/eMenuList.vue create mode 100644 src/layout/eHeader/index.vue create mode 100644 src/layout/index.vue delete mode 100644 src/store/index.js delete mode 100644 src/views/Layout/eHeader/eMenuItem.vue delete mode 100644 src/views/Layout/eHeader/eMenuList.vue delete mode 100644 src/views/Layout/eHeader/index.vue delete mode 100644 src/views/Layout/index.vue diff --git a/package-lock.json b/package-lock.json index 166bd92..db087aa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1120,6 +1120,61 @@ "integrity": "sha1-K1o6s/kYzKSKjHVMCBaOPwPrphs=", "dev": true }, + "@nuxt/opencollective": { + "version": "0.3.2", + "resolved": "https://registry.npm.taobao.org/@nuxt/opencollective/download/@nuxt/opencollective-0.3.2.tgz", + "integrity": "sha1-g8twzbK6xfrW+Mk1KeexEYfUnAI=", + "requires": { + "chalk": "^4.1.0", + "consola": "^2.15.0", + "node-fetch": "^2.6.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-4.3.0.tgz?cache=0&sync_timestamp=1606792302448&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-styles%2Fdownload%2Fansi-styles-4.3.0.tgz", + "integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=", + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-4.1.0.tgz?cache=0&sync_timestamp=1591686984650&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-4.1.0.tgz", + "integrity": "sha1-ThSHCmGNni7dl92DRf2dncMVZGo=", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz", + "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz", + "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz", + "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=" + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-7.2.0.tgz", + "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=", + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "@soda/friendly-errors-webpack-plugin": { "version": "1.7.1", "resolved": "https://registry.npm.taobao.org/@soda/friendly-errors-webpack-plugin/download/@soda/friendly-errors-webpack-plugin-1.7.1.tgz", @@ -2865,6 +2920,23 @@ "resolved": "https://registry.npm.taobao.org/boolbase/download/boolbase-1.0.0.tgz", "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" }, + "bootstrap": { + "version": "4.5.3", + "resolved": "https://registry.npm.taobao.org/bootstrap/download/bootstrap-4.5.3.tgz", + "integrity": "sha1-xqcrNVqvMjkgvoACRqbk7zCZf+Y=" + }, + "bootstrap-vue": { + "version": "2.21.1", + "resolved": "https://registry.npm.taobao.org/bootstrap-vue/download/bootstrap-vue-2.21.1.tgz", + "integrity": "sha1-INPO2WtzWRfYvnG3dxfu50u0DG8=", + "requires": { + "@nuxt/opencollective": "^0.3.2", + "bootstrap": ">=4.5.3 <5.0.0", + "popper.js": "^1.16.1", + "portal-vue": "^2.1.7", + "vue-functional-data-merge": "^3.1.0" + } + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npm.taobao.org/brace-expansion/download/brace-expansion-1.1.11.tgz", @@ -3733,6 +3805,11 @@ "integrity": "sha1-izIIk1kwjRERFdgcrT/Oq4iPl7w=", "dev": true }, + "consola": { + "version": "2.15.0", + "resolved": "https://registry.npm.taobao.org/consola/download/consola-2.15.0.tgz?cache=0&sync_timestamp=1596625700864&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconsola%2Fdownload%2Fconsola-2.15.0.tgz", + "integrity": "sha1-QPxO76TS+O8uKAYUfwVuogf8wOk=" + }, "console-browserify": { "version": "1.2.0", "resolved": "https://registry.npm.taobao.org/console-browserify/download/console-browserify-1.2.0.tgz", @@ -7267,6 +7344,11 @@ "type-check": "~0.3.2" } }, + "lib-flexible": { + "version": "0.3.2", + "resolved": "https://registry.npm.taobao.org/lib-flexible/download/lib-flexible-0.3.2.tgz", + "integrity": "sha1-BvWnSDIxSi01wSA5vJw8otrqpCY=" + }, "lines-and-columns": { "version": "1.1.6", "resolved": "https://registry.npm.taobao.org/lines-and-columns/download/lines-and-columns-1.1.6.tgz", @@ -7965,6 +8047,11 @@ "lower-case": "^1.1.1" } }, + "node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npm.taobao.org/node-fetch/download/node-fetch-2.6.1.tgz?cache=0&sync_timestamp=1599309202591&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-fetch%2Fdownload%2Fnode-fetch-2.6.1.tgz", + "integrity": "sha1-BFvTI2Mfdu0uK1VXM5RBa2OaAFI=" + }, "node-forge": { "version": "0.10.0", "resolved": "https://registry.npm.taobao.org/node-forge/download/node-forge-0.10.0.tgz?cache=0&sync_timestamp=1599010757493&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-forge%2Fdownload%2Fnode-forge-0.10.0.tgz", @@ -8844,6 +8931,16 @@ "ts-pnp": "^1.1.6" } }, + "popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npm.taobao.org/popper.js/download/popper.js-1.16.1.tgz", + "integrity": "sha1-KiI8s9x7YhPXQOQDcr5A3kPmWxs=" + }, + "portal-vue": { + "version": "2.1.7", + "resolved": "https://registry.npm.taobao.org/portal-vue/download/portal-vue-2.1.7.tgz", + "integrity": "sha1-6ggGmyW2QMoIpbhvZ8YS8V9OStQ=" + }, "portfinder": { "version": "1.0.28", "resolved": "https://registry.npm.taobao.org/portfinder/download/portfinder-1.0.28.tgz?cache=0&sync_timestamp=1596019946887&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fportfinder%2Fdownload%2Fportfinder-1.0.28.tgz", @@ -12379,7 +12476,7 @@ }, "vue": { "version": "2.6.12", - "resolved": "https://registry.npm.taobao.org/vue/download/vue-2.6.12.tgz?cache=0&sync_timestamp=1600441210971&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue%2Fdownload%2Fvue-2.6.12.tgz", + "resolved": "https://registry.npm.taobao.org/vue/download/vue-2.6.12.tgz", "integrity": "sha1-9evU+mvShpQD4pqJau1JBEVskSM=" }, "vue-clipboard2": { @@ -12416,6 +12513,11 @@ } } }, + "vue-functional-data-merge": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/vue-functional-data-merge/download/vue-functional-data-merge-3.1.0.tgz", + "integrity": "sha1-CKd5dYO381aAWH+KHVHXKaodxlc=" + }, "vue-hot-reload-api": { "version": "2.3.4", "resolved": "https://registry.npm.taobao.org/vue-hot-reload-api/download/vue-hot-reload-api-2.3.4.tgz", diff --git a/package.json b/package.json index 047439c..6ff1098 100644 --- a/package.json +++ b/package.json @@ -3,14 +3,17 @@ "version": "0.1.0", "private": true, "scripts": { - "serve": "vue-cli-service serve", + "dev": "vue-cli-service serve", "build": "vue-cli-service build", "lint": "vue-cli-service lint" }, "dependencies": { "animate.css": "^4.1.1", + "bootstrap": "^4.5.3", + "bootstrap-vue": "^2.21.1", "core-js": "^3.6.5", "element-ui": "^2.13.2", + "lib-flexible": "^0.3.2", "nprogress": "^0.2.0", "script-ext-html-webpack-plugin": "^2.1.4", "svg-sprite-loader": "^5.0.0", diff --git a/src/App.vue b/src/App.vue index 1740189..94fa46b 100644 --- a/src/App.vue +++ b/src/App.vue @@ -6,7 +6,7 @@ diff --git a/src/components/eButtonGroup/index.vue b/src/components/eButtonGroup/index.vue index ab4b57a..22dc5a2 100644 --- a/src/components/eButtonGroup/index.vue +++ b/src/components/eButtonGroup/index.vue @@ -27,28 +27,28 @@ export default { diff --git a/src/components/ePreviewPdf/index.vue b/src/components/ePreviewPdf/index.vue index 7a77c3c..6157cba 100644 --- a/src/components/ePreviewPdf/index.vue +++ b/src/components/ePreviewPdf/index.vue @@ -67,8 +67,8 @@ export default { }, loadFile(url) { this.loading = true; - let loadingTask = pdfjsLib.getDocument(url); - loadingTask.promise + let pdfTask = pdfjsLib.getDocument(url); + pdfTask.promise .then(pdf => { this.pdfDoc = pdf; this.numPages = this.pdfDoc.numPages; @@ -107,8 +107,8 @@ export default { if (canvas) { canvas.width = width * ratio; canvas.height = height * ratio; - canvas.style.width = width + "px"; - canvas.style.height = height + "px"; + canvas.style.width = width/10 + "em"; + canvas.style.height = height/10 + "em"; ctx.setTransform(ratio, 0, 0, ratio, 0, 0); let renderTask = page.render({ diff --git a/src/components/eSearch/search.vue b/src/components/eSearch/search.vue index 8e7cf9b..4266aa7 100644 --- a/src/components/eSearch/search.vue +++ b/src/components/eSearch/search.vue @@ -3,11 +3,11 @@ - + @@ -15,7 +15,7 @@ diff --git a/src/components/eVideoCard/index.vue b/src/components/eVideoCard/index.vue index 6f776e6..b71f997 100644 --- a/src/components/eVideoCard/index.vue +++ b/src/components/eVideoCard/index.vue @@ -91,25 +91,25 @@ export default { diff --git a/src/views/Layout/eFooter/index.vue b/src/layout/eFooter/index.vue similarity index 93% rename from src/views/Layout/eFooter/index.vue rename to src/layout/eFooter/index.vue index 9a46db5..db9668b 100644 --- a/src/views/Layout/eFooter/index.vue +++ b/src/layout/eFooter/index.vue @@ -20,10 +20,10 @@ export default { diff --git a/src/layout/eHeader/index.vue b/src/layout/eHeader/index.vue new file mode 100644 index 0000000..d5609d8 --- /dev/null +++ b/src/layout/eHeader/index.vue @@ -0,0 +1,89 @@ + + + + + diff --git a/src/layout/index.vue b/src/layout/index.vue new file mode 100644 index 0000000..351ddd1 --- /dev/null +++ b/src/layout/index.vue @@ -0,0 +1,25 @@ + + + diff --git a/src/main.js b/src/main.js index 9ce5d3e..279f0e2 100644 --- a/src/main.js +++ b/src/main.js @@ -1,14 +1,15 @@ import Vue from "vue"; import App from "./App.vue"; import router from "./router"; -import store from "./store"; -import ElementUI from "element-ui"; import VueVideoPlayer from "vue-video-player"; import VueClipboard from "vue-clipboard2"; import Animated from "animate.css"; +import Loading from '@/components/eLoading/index'; +import { BootstrapVue, IconsPlugin } from 'bootstrap-vue' import "./permission"; -import "element-ui/lib/theme-chalk/index.css"; +import 'bootstrap/dist/css/bootstrap.css'; +import 'bootstrap-vue/dist/bootstrap-vue.css'; import "video.js/dist/video-js.css"; import "vue-video-player/src/custom-theme.css"; import "videojs-flash"; @@ -20,13 +21,14 @@ import "@/style/iconfont.css"; window.router = router; Vue.config.productionTip = false; -Vue.use(ElementUI); +Vue.use(BootstrapVue) +Vue.use(IconsPlugin) Vue.use(VueVideoPlayer); Vue.use(VueClipboard); Vue.use(Animated); +Vue.use(Loading); new Vue({ router, - store, render: h => h(App) }).$mount("#app"); diff --git a/src/router/index.js b/src/router/index.js index 92b4438..7b498ae 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -1,7 +1,7 @@ import Vue from "vue"; import VueRouter from "vue-router"; -import Layout from "../views/Layout/index.vue"; -import Home from "../views/Home/index.vue"; +import Layout from "@/layout/index.vue"; +import Home from "@/views/Home/index.vue"; Vue.use(VueRouter); @@ -15,20 +15,17 @@ const routes = [ path: "/", component: Layout, children: [ - { - path: "/home", - name: "Home", - component: Home - }, { path: "/preview/pdf", name: "PreviewPdf", + hidden: true, component: () => import(/* webpackChunkName: "pdf" */ "../views/PreviewPdf/index.vue") }, { path: "/preview/image", name: "PreviewImage", + hidden: true, component: () => import( /* webpackChunkName: "image" */ "../views/PreviewImage/index.vue" @@ -37,20 +34,51 @@ const routes = [ { path: "/preview/player", name: "PreviewPlayer", + hidden: true, component: () => import( /* webpackChunkName: "player" */ "../views/PreviewPlayer/index.vue" ) }, + { + path: "/home", + name: "Home", + meta: { + name: '首页' + }, + component: Home + }, { path: "/honor", name: "Honor", + meta: { + name: '我们的产品' + }, component: () => - import(/* webpackChunkName: "honor" */ "../views/Honor/index.vue") + import(/* webpackChunkName: "honor" */ "../views/Exhibition/index.vue") }, { path: "/exhibition", name: "Exhibition", + meta: { + name: '经典案例' + }, + children: [ + { + path: '/', + redirect: "/preview/pdf?src=西安铁路职业技术学院.pdf", + meta: { + name: "西安铁路职业技术学院", + } + }, + { + path: '/', + redirect: "/preview/pdf?src=贵州装备制造职业学院机电技术专业实训室建设.pdf", + meta: { + name: "贵州装备制造职业学院", + } + } + ], component: () => import( /* webpackChunkName: "exhibition" */ "../views/Exhibition/index.vue" @@ -59,12 +87,18 @@ const routes = [ { path: "/about", name: "About", + meta: { + name: '关于玖琏' + }, component: () => import(/* webpackChunkName: "about" */ "../views/About.vue") }, { path: "/relation", name: "Relation", + meta: { + name: '联系我们' + }, component: () => import(/* webpackChunkName: "relation" */ "../views/Relation.vue") } diff --git a/src/store/index.js b/src/store/index.js deleted file mode 100644 index fb6015f..0000000 --- a/src/store/index.js +++ /dev/null @@ -1,11 +0,0 @@ -import Vue from "vue"; -import Vuex from "vuex"; - -Vue.use(Vuex); - -export default new Vuex.Store({ - state: {}, - mutations: {}, - actions: {}, - modules: {} -}); diff --git a/src/style/iconfont.css b/src/style/iconfont.css index c67a85a..f9396fe 100644 --- a/src/style/iconfont.css +++ b/src/style/iconfont.css @@ -9,7 +9,7 @@ .iconfont { font-family: "iconfont" !important; - font-size: 16px; + font-size: 1.6em; font-style: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; diff --git a/src/views/About.vue b/src/views/About.vue index 6974a15..9f25fb1 100644 --- a/src/views/About.vue +++ b/src/views/About.vue @@ -2,7 +2,7 @@
-

公司简介

+
公司简介

北京玖琏科技有限公司成立于2017年1月3日,公司总部位于首都北京,在古都西安设有研发中心。公司致力服务于轨道交通行业、化学化工行业、电力电厂行业等, 针对各个行业需求及痛点提供一体化培训解决方案。我公司自主研发的行业数字孪生云平台力求站在行业内城市轨道交通的最前沿,集云计算、真实系统逻辑及日常 @@ -11,24 +11,17 @@ 铁路职业技术学院等多所高校合作,完成相关培训中心和实验室建设等。

- +
-

招商及代理

+
招商及代理

为进一步加快行业职教互联网化进程,提高职业教育的教学水平,提升个人能力的共享实训平台,我公司长期面向社会寻求代理合作, 代理商主要负责市场推广及商务交流、项目招投标等内容,详情咨询 @@ -37,17 +30,14 @@

-
-
- -

加入玖琏

-

- 你的加入可以给我们带来新的活力,我们同样也可以赠你无限的发展空间。世界那么大,你不来,谁知道你牛逼?多一份了解,多一份选择, - 选择不对努力白费,寻找合伙人寻找最优秀的你,欢迎将你的简历投递至 - henry@joylink.club - 。 -

-
+
+ +
加入玖琏
+

+ 你的加入可以给我们带来新的活力,我们同样也可以赠你无限的发展空间。世界那么大,你不来,谁知道你牛逼?多一份了解,多一份选择, + 选择不对努力白费,寻找合伙人寻找最优秀的你,欢迎将你的简历投递至 + henry@joylink.club。 +

@@ -97,27 +87,23 @@ export default { .main { text-align: left; background: #f7f7f9; - padding: 10px; + padding: 1em; .container { - width: 50%; + width: 80%; margin: auto; background: #fff; - padding: 80px; + padding: 4.8em; article { position: relative; - margin-bottom: 70px; + padding-bottom: 7em; p { text-indent: 2em; } .image-box { - position: absolute; - left: calc(-80px - 2.5%); - right: -80px; - top: 0; - h3 { + h6 { position: absolute; top: 25%; left: 28%; @@ -138,7 +124,6 @@ export default { display: flex; align-items: center; justify-content: space-around; - height: 420px; .world { width: 49%; height: auto; diff --git a/src/views/Error/401.vue b/src/views/Error/401.vue index 2ad4021..0c1e11a 100644 --- a/src/views/Error/401.vue +++ b/src/views/Error/401.vue @@ -1,8 +1,8 @@