页面优化

This commit is contained in:
Aicirou 2020-05-03 15:10:01 +08:00
parent ccabc51853
commit 8747ca0d16
14 changed files with 441 additions and 143 deletions

1
.env
View File

@ -1,2 +1,3 @@
VUE_APP_I18N_LOCALE=zh-chs
VUE_APP_I18N_FALLBACK_LOCALE=en
VUE_APP_PUBLIC_PATH=https://cloud.jsonpop.cn/go2index/vue/dist/

View File

@ -1,2 +1,3 @@
# 开发环境
VUE_APP_API=/api
VUE_APP_PUBLIC_PATH=/

View File

@ -12,4 +12,7 @@ module.exports = [
// { name: 'brace/snippets/javascript', library: 'javascript', js: ' https://cdn.jsdelivr.net/npm/brace@0.11.1/snippets/javascript.js', css: '' },
// { name: 'vue2-ace-editor', library: 'Vue2ACEEditor', js: 'https://cdn.jsdelivr.net/npm/vue2-ace-editor@0.0.15/index.min.js', css: '' },
{ name: 'markdown-it', library: 'markdownit', js: 'https://cdn.jsdelivr.net/npm/markdown-it@10.0.0/dist/markdown-it.min.js', css: '' },
{ name: '', library: '', js: '', css: 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css' },
{ name: '', library: '', js: '', css: 'https://cdn.jsdelivr.net/npm/font-awesome@latest/css/font-awesome.min.css' },
{ name: '', library: '', js: '', css: 'https://cdn.jsdelivr.net/npm/font-awesome-animation@0.2.1/dist/font-awesome-animation.min.css' },
]

162
package-lock.json generated
View File

@ -2143,6 +2143,14 @@
"integrity": "sha1-3TeelPDbgxCwgpH51kwyCXZmF/0=",
"dev": true
},
"async-validator": {
"version": "1.8.5",
"resolved": "https://registry.npm.taobao.org/async-validator/download/async-validator-1.8.5.tgz",
"integrity": "sha1-3D4I7B/Q3dtn5ghC8CwM0c7G1/A=",
"requires": {
"babel-runtime": "6.x"
}
},
"asynckit": {
"version": "0.4.0",
"resolved": "http://registry.npm.taobao.org/asynckit/download/asynckit-0.4.0.tgz",
@ -2224,6 +2232,11 @@
"resolve": "^1.12.0"
}
},
"babel-helper-vue-jsx-merge-props": {
"version": "2.0.3",
"resolved": "https://registry.npm.taobao.org/babel-helper-vue-jsx-merge-props/download/babel-helper-vue-jsx-merge-props-2.0.3.tgz",
"integrity": "sha1-Iq69OzOQIyjlEyk6jkmSs4T58bY="
},
"babel-loader": {
"version": "8.1.0",
"resolved": "https://registry.npm.taobao.org/babel-loader/download/babel-loader-8.1.0.tgz?cache=0&sync_timestamp=1584717315701&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbabel-loader%2Fdownload%2Fbabel-loader-8.1.0.tgz",
@ -2237,6 +2250,38 @@
"schema-utils": "^2.6.5"
}
},
"babel-plugin-component": {
"version": "1.1.1",
"resolved": "https://registry.npm.taobao.org/babel-plugin-component/download/babel-plugin-component-1.1.1.tgz",
"integrity": "sha1-mwI6I/9cmq4P1WxaGLnKuMTUXuo=",
"dev": true,
"requires": {
"@babel/helper-module-imports": "7.0.0-beta.35"
},
"dependencies": {
"@babel/helper-module-imports": {
"version": "7.0.0-beta.35",
"resolved": "https://registry.npm.taobao.org/@babel/helper-module-imports/download/@babel/helper-module-imports-7.0.0-beta.35.tgz",
"integrity": "sha1-MI41DnMXUs200PBY3x1wSSXGTgo=",
"dev": true,
"requires": {
"@babel/types": "7.0.0-beta.35",
"lodash": "^4.2.0"
}
},
"@babel/types": {
"version": "7.0.0-beta.35",
"resolved": "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.0.0-beta.35.tgz?cache=0&sync_timestamp=1588185770735&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Ftypes%2Fdownload%2F%40babel%2Ftypes-7.0.0-beta.35.tgz",
"integrity": "sha1-z5M6mpo4SEynJLM1uI2Dcm1auWA=",
"dev": true,
"requires": {
"esutils": "^2.0.2",
"lodash": "^4.2.0",
"to-fast-properties": "^2.0.0"
}
}
}
},
"babel-plugin-dynamic-import-node": {
"version": "2.3.3",
"resolved": "https://registry.npm.taobao.org/babel-plugin-dynamic-import-node/download/babel-plugin-dynamic-import-node-2.3.3.tgz?cache=0&sync_timestamp=1587495874530&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbabel-plugin-dynamic-import-node%2Fdownload%2Fbabel-plugin-dynamic-import-node-2.3.3.tgz",
@ -2246,6 +2291,27 @@
"object.assign": "^4.1.0"
}
},
"babel-runtime": {
"version": "6.26.0",
"resolved": "https://registry.npm.taobao.org/babel-runtime/download/babel-runtime-6.26.0.tgz",
"integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
"requires": {
"core-js": "^2.4.0",
"regenerator-runtime": "^0.11.0"
},
"dependencies": {
"core-js": {
"version": "2.6.11",
"resolved": "https://registry.npm.taobao.org/core-js/download/core-js-2.6.11.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-2.6.11.tgz",
"integrity": "sha1-OIMUafmSK97Y7iHJ3EaYXgOZMIw="
},
"regenerator-runtime": {
"version": "0.11.1",
"resolved": "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.11.1.tgz?cache=0&sync_timestamp=1584052392667&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerator-runtime%2Fdownload%2Fregenerator-runtime-0.11.1.tgz",
"integrity": "sha1-vgWtf5v30i4Fb5cmzuUBf78Z4uk="
}
}
},
"balanced-match": {
"version": "1.0.0",
"resolved": "http://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz",
@ -2318,6 +2384,11 @@
"integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=",
"dev": true
},
"batch-processor": {
"version": "1.0.0",
"resolved": "https://registry.npm.taobao.org/batch-processor/download/batch-processor-1.0.0.tgz",
"integrity": "sha1-dclcMrdI4IUNEMKxaPa9vpiRrOg="
},
"bcrypt-pbkdf": {
"version": "1.0.2",
"resolved": "http://registry.npm.taobao.org/bcrypt-pbkdf/download/bcrypt-pbkdf-1.0.2.tgz",
@ -3881,8 +3952,7 @@
"deepmerge": {
"version": "1.5.2",
"resolved": "https://registry.npm.taobao.org/deepmerge/download/deepmerge-1.5.2.tgz",
"integrity": "sha1-EEmdhohEza1P7ghC34x/bwyVp1M=",
"dev": true
"integrity": "sha1-EEmdhohEza1P7ghC34x/bwyVp1M="
},
"default-gateway": {
"version": "5.0.5",
@ -4334,6 +4404,27 @@
"integrity": "sha1-nQqS3v79p8wc+IlQWLiSeV3da0E=",
"dev": true
},
"element-resize-detector": {
"version": "1.2.1",
"resolved": "https://registry.npm.taobao.org/element-resize-detector/download/element-resize-detector-1.2.1.tgz",
"integrity": "sha1-sDBRlER6SGMVXljxMyOgrvMIUdE=",
"requires": {
"batch-processor": "1.0.0"
}
},
"element-ui": {
"version": "2.13.1",
"resolved": "https://registry.npm.taobao.org/element-ui/download/element-ui-2.13.1.tgz",
"integrity": "sha1-DLGkXPJ6phxgHe++GSdArFy533w=",
"requires": {
"async-validator": "~1.8.1",
"babel-helper-vue-jsx-merge-props": "^2.0.0",
"deepmerge": "^1.2.0",
"normalize-wheel": "^1.0.1",
"resize-observer-polyfill": "^1.5.0",
"throttle-debounce": "^1.0.1"
}
},
"elliptic": {
"version": "6.5.2",
"resolved": "https://registry.npm.taobao.org/elliptic/download/elliptic-6.5.2.tgz",
@ -7056,6 +7147,33 @@
"resolved": "http://registry.npm.taobao.org/isstream/download/isstream-0.1.2.tgz",
"integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo="
},
"iview": {
"version": "3.5.4",
"resolved": "https://registry.npm.taobao.org/iview/download/iview-3.5.4.tgz?cache=0&sync_timestamp=1575428499080&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fiview%2Fdownload%2Fiview-3.5.4.tgz",
"integrity": "sha1-1Ra5LnO2F/Lcf0WDH5kFnWmTL4I=",
"requires": {
"async-validator": "^1.12.2",
"deepmerge": "^2.2.1",
"element-resize-detector": "^1.2.0",
"js-calendar": "^1.2.3",
"lodash.throttle": "^4.1.1",
"popper.js": "^1.14.6",
"tinycolor2": "^1.4.1",
"v-click-outside-x": "^4.0.19"
},
"dependencies": {
"async-validator": {
"version": "1.12.2",
"resolved": "https://registry.npm.taobao.org/async-validator/download/async-validator-1.12.2.tgz",
"integrity": "sha1-vq5nHnF00pOLe0tp0vt+cit/1yw="
},
"deepmerge": {
"version": "2.2.1",
"resolved": "https://registry.npm.taobao.org/deepmerge/download/deepmerge-2.2.1.tgz",
"integrity": "sha1-XT/yKgHAD2RUBaL7wX0HeKGAEXA="
}
}
},
"javascript-stringify": {
"version": "2.0.1",
"resolved": "https://registry.npm.taobao.org/javascript-stringify/download/javascript-stringify-2.0.1.tgz",
@ -7094,6 +7212,11 @@
"resolved": "https://registry.npm.taobao.org/js-base64/download/js-base64-2.5.2.tgz",
"integrity": "sha1-MTtidN2nGPcU0AszMLuubjjpAgk="
},
"js-calendar": {
"version": "1.2.3",
"resolved": "https://registry.npm.taobao.org/js-calendar/download/js-calendar-1.2.3.tgz",
"integrity": "sha1-pYOwZEtOaVujlPNE0QPbzHp6fT4="
},
"js-cookie": {
"version": "2.2.1",
"resolved": "https://registry.npm.taobao.org/js-cookie/download/js-cookie-2.2.1.tgz",
@ -7424,6 +7547,11 @@
"integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=",
"dev": true
},
"lodash.throttle": {
"version": "4.1.1",
"resolved": "https://registry.npm.taobao.org/lodash.throttle/download/lodash.throttle-4.1.1.tgz",
"integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ="
},
"lodash.transform": {
"version": "4.6.0",
"resolved": "http://registry.npm.taobao.org/lodash.transform/download/lodash.transform-4.6.0.tgz",
@ -8177,6 +8305,11 @@
"integrity": "sha1-suHE3E98bVd0PfczpPWXjRhlBVk=",
"dev": true
},
"normalize-wheel": {
"version": "1.0.1",
"resolved": "https://registry.npm.taobao.org/normalize-wheel/download/normalize-wheel-1.0.1.tgz",
"integrity": "sha1-rsiGr/2wRQcNhWRH32Ls+GFG7EU="
},
"npm-run-path": {
"version": "2.0.2",
"resolved": "https://registry.npm.taobao.org/npm-run-path/download/npm-run-path-2.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-run-path%2Fdownload%2Fnpm-run-path-2.0.2.tgz",
@ -8812,6 +8945,11 @@
"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="
},
"portfinder": {
"version": "1.0.25",
"resolved": "https://registry.npm.taobao.org/portfinder/download/portfinder-1.0.25.tgz",
@ -10001,6 +10139,11 @@
"integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
"dev": true
},
"resize-observer-polyfill": {
"version": "1.5.1",
"resolved": "https://registry.npm.taobao.org/resize-observer-polyfill/download/resize-observer-polyfill-1.5.1.tgz",
"integrity": "sha1-DpAg3T0hAkRY1OvSfiPkAmmBBGQ="
},
"resolve": {
"version": "1.17.0",
"resolved": "https://registry.npm.taobao.org/resolve/download/resolve-1.17.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fresolve%2Fdownload%2Fresolve-1.17.0.tgz",
@ -11341,6 +11484,11 @@
"neo-async": "^2.6.0"
}
},
"throttle-debounce": {
"version": "1.1.0",
"resolved": "https://registry.npm.taobao.org/throttle-debounce/download/throttle-debounce-1.1.0.tgz",
"integrity": "sha1-UYU9o3vmihVctugns1FKPEIuic0="
},
"through": {
"version": "2.3.8",
"resolved": "http://registry.npm.taobao.org/through/download/through-2.3.8.tgz",
@ -11378,6 +11526,11 @@
"integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=",
"dev": true
},
"tinycolor2": {
"version": "1.4.1",
"resolved": "https://registry.npm.taobao.org/tinycolor2/download/tinycolor2-1.4.1.tgz",
"integrity": "sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g="
},
"tmp": {
"version": "0.0.33",
"resolved": "https://registry.npm.taobao.org/tmp/download/tmp-0.0.33.tgz",
@ -11822,6 +11975,11 @@
"resolved": "https://registry.npm.taobao.org/uuid/download/uuid-3.4.0.tgz?cache=0&sync_timestamp=1585683718911&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuuid%2Fdownload%2Fuuid-3.4.0.tgz",
"integrity": "sha1-sj5DWK+oogL+ehAK8fX4g/AgB+4="
},
"v-click-outside-x": {
"version": "4.1.0",
"resolved": "https://registry.npm.taobao.org/v-click-outside-x/download/v-click-outside-x-4.1.0.tgz",
"integrity": "sha1-voJmgOLSVmaooYUzKSnUYkSqJEc="
},
"v8-compile-cache": {
"version": "2.1.0",
"resolved": "https://registry.npm.taobao.org/v8-compile-cache/download/v8-compile-cache-2.1.0.tgz",

View File

@ -13,6 +13,8 @@
"axios": "^0.19.2",
"bulma": "^0.8.2",
"core-js": "^3.6.4",
"element-ui": "^2.13.1",
"iview": "^3.5.4",
"js-cookie": "^2.2.1",
"markdown-it": "^10.0.0",
"node-sass": "^4.14.0",
@ -29,6 +31,7 @@
"@vue/cli-plugin-eslint": "~4.3.0",
"@vue/cli-service": "~4.3.0",
"babel-eslint": "^10.1.0",
"babel-plugin-component": "^1.1.1",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^6.2.2",
"fs": "0.0.1-security",

View File

@ -1,5 +1,9 @@
var styles = [
"https://cloud.jsonpop.cn/go2index/vue/dist/css/app.15d37280.css",
'https://cdn.jsdelivr.net/npm/bulma@0.8.2/css/bulma.min.css',
'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css',
'https://cdn.jsdelivr.net/npm/font-awesome@latest/css/font-awesome.min.css',
'https://cdn.jsdelivr.net/npm/font-awesome-animation@0.2.1/dist/font-awesome-animation.min.css',
'https://cloud.jsonpop.cn/go2index/vue/dist/css/app.15d37280.css',
];
var scripts = [
"https://cdn.jsdelivr.net/npm/vue@2.6.11/dist/vue.min.js",
@ -14,15 +18,14 @@ var scripts = [
// 'https://cdn.jsdelivr.net/npm/brace@0.11.1/theme/chrome.js',
// 'https://cdn.jsdelivr.net/npm/brace@0.11.1/snippets/javascript.js',
"https://cdn.jsdelivr.net/npm/markdown-it@10.0.0/dist/markdown-it.min.js",
"https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-1ed22f12.04581a30.js",
"https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-vendors.1a3ef683.js",
"https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-4850b756.26fb9f5b.js",
"https://cloud.jsonpop.cn/go2index/vue/dist/js/app.f79caaca.js",
"https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-56b11c46.aabf7f7a.js",
"https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-6a24b24e.b6c1758e.js",
"https://cloud.jsonpop.cn/go2index/vue/dist/app.js",
"https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-2d0aed92.4702bce7.js",
"https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-2d2137a3.e34d1790.js",
'https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-1ed22f12.64aeb3d6.js',
'https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-vendors.1a3ef683.js',
'https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-4850b756.160c2c8c.js',
'https://cloud.jsonpop.cn/go2index/vue/dist/js/app.f314926a.js',
'https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-56b11c46.cc8e90e1.js',
'https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-6a24b24e.b8a4da9e.js',
'https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-2d0aed92.7e4c9d1b.js',
'https://cloud.jsonpop.cn/go2index/vue/dist/js/chunk-2d2137a3.5bc616b8.js',
];
styles.forEach((item) => {

View File

@ -3,12 +3,15 @@ server {
server_name localhost;
root /Users/momik/Documents/MyWork/OpenSource/go2index-theme-acrou/dist;
location /0: {
proxy_pass https://ossdev.achirou.workers.dev;
# location /0: {
# proxy_pass http://ossdev.achirou.workers.dev;
# }
location =/index.html{
index index.html;
}
# location / {
# root /Users/momik/Documents/MyWork/OpenSource/go2index-theme-acrou/dist;
# index index.html index.htm;
# }
location ?!(.*\.js|css) {
try_files '' /index.html;
}
}

View File

@ -37,7 +37,8 @@ body {
.table {
width: 100%;
table-layout: fixed;
th,td {
th,
td {
border: 0 !important;
}
td {
@ -45,7 +46,8 @@ body {
text-overflow: ellipsis;
white-space: nowrap;
vertical-align: middle;
&:hover,& .icon{
&:hover,
& .icon {
cursor: pointer;
}
}
@ -56,7 +58,8 @@ body {
}
.no-content {
background: url(https://s1.hdslb.com/bfs/static/jinkela/search/asserts/no-data.png) no-repeat 50% 50%;
background: url(https://s1.hdslb.com/bfs/static/jinkela/search/asserts/no-data.png)
no-repeat 50% 50%;
height: 240px;
line-height: 240px;
text-align: center;
@ -78,7 +81,6 @@ body {
}
}
.golist {
min-height: 240px;
position: relative;
@ -90,7 +92,7 @@ body {
.pageloader {
position: absolute;
padding-top: 0;
background: hsla(0,0%,100%,.6);
background: hsla(0, 0%, 100%, 0.6);
will-change: initial;
.title {
@ -101,3 +103,61 @@ body {
border: 0 solid black;
}
}
.caret-wrapper {
display: inline-flex;
flex-direction: column;
align-items: center;
height: 34px;
width: 24px;
vertical-align: middle;
cursor: pointer;
overflow: initial;
position: relative;
}
.sort-caret.ascending {
border-bottom-color: #c0c4cc;
top: 5px;
}
.sort-caret.descending {
border-top-color: #c0c4cc;
bottom: 7px;
}
.descending .sort-caret.descending {
border-top-color: #409eff;
}
.ascending .sort-caret.ascending {
border-bottom-color: #409eff;
}
.sort-caret {
width: 0;
height: 0;
border: 5px solid transparent;
position: absolute;
left: 7px;
}
.el-table table,
tbody,
thead {
width: 100% !important;
}
.el-table colgroup {
// position: absolute;
width: 100% !important;
display: flex;
}
.el-table col {
flex: 1;
text-align: center;
}
.el-table td, .el-table th.is-leaf{
// width: 100%;
border-bottom: initial;
}
.el-table td{
&:hover{
cursor: pointer;
}
}

View File

@ -0,0 +1,15 @@
<template>
<a class="navbar-item" @click="handleClick">
<i class="fa fa-search"></i>
</a>
</template>
<script>
export default {
methods: {
handleClick () {
this.$emit('click')
}
}
}
</script>

View File

@ -1,25 +1,20 @@
import Vue from 'vue'
import App from './App.vue'
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
import iView from 'iview'
import 'iview/dist/styles/iview.css'
import axios from '@utils/axios'
import VueAxios from 'vue-axios'
import router from './router'
import i18n from './i18n'
import "@/assets/style/theme/register.scss"
var styles = [
// 'https://cdn.jsdelivr.net/npm/bulma@0.8.1/css/bulma.min.css',
// 'https://cdn.jsdelivr.net/npm/bulma-tooltip@3.0.2/dist/css/bulma-tooltip.min.css',
'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css',
'https://cdn.jsdelivr.net/npm/font-awesome@latest/css/font-awesome.min.css',
'https://cdn.jsdelivr.net/npm/font-awesome-animation@0.2.1/dist/font-awesome-animation.min.css',
// 'https://cdn.jsdelivr.net/npm/bulma-pageloader@0.3.0/dist/css/bulma-pageloader.min.css'
]
styles.forEach(item=>{
document.write(`<link rel="stylesheet" href="${item}">`);
})
document.write('<div id="app"></div>');
document.write('<div id="app"></div>')
Vue.config.productionTip = false
Vue.use(ElementUI)
Vue.use(iView)
Vue.use(VueAxios,axios)
new Vue({

View File

@ -42,6 +42,3 @@ export default {
}
}
</script>
<style lang="scss">
@import "~@/assets/style/theme/register.scss";
</style>

View File

@ -37,7 +37,7 @@
</div>
<div class="navbar-end">
<div class="navbar-item">
<!-- <div class="navbar-item is-hidden-desktop">
<div class="field is-grouped">
<p class="control has-icons-left" style="width:100%;">
<input
@ -52,7 +52,8 @@
</span>
</p>
</div>
</div>
</div> -->
<header-search />
<header-locales />
<a
class="navbar-item"
@ -70,9 +71,11 @@
</template>
<script>
import headerLocales from '@/layout/header-aside/components/header-locales'
import headerSearch from '@/layout/header-aside/components/header-search'
import headerLocales from "@/layout/header-aside/components/header-locales";
export default {
components: {
headerSearch,
headerLocales
},
created() {
@ -107,7 +110,9 @@ export default {
changeItem(item) {
this.currgd = item;
localStorage.setItem("currgd", JSON.stringify(item));
location.href = item.id;
this.$router.push({
path: item.id
});
},
query() {
if (this.param) {

View File

@ -1,6 +1,9 @@
<template>
<div>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma-pageloader@0.3.0/dist/css/bulma-pageloader.min.css" />
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/bulma-pageloader@0.3.0/dist/css/bulma-pageloader.min.css"
/>
<headmd :option="headmd" v-show="headmd.display"></headmd>
<div class="golist">
<table class="table is-hoverable">
@ -11,7 +14,13 @@
v-bind:key="index"
:class="column.class"
:style="column.style"
>{{column.name}}</th>
>
{{column.name}}
<span class="caret-wrapper">
<i class="sort-caret ascending"></i>
<i class="sort-caret descending"></i>
</span>
</th>
</tr>
</thead>
<tbody>
@ -45,6 +54,42 @@
</tr>
</tbody>
</table>
<!-- <el-table
:data="files"
:cell-class-name="cellClass"
:header-row-class-name="cellClass"
@cell-click="go"
>
<el-table-column prop="name" :label="$t('list.title.file')" min-width="10" sortable>
<template slot-scope="scope">
<svg class="iconfont" aria-hidden="true">
<use :xlink:href="getIcon(scope.row.mimeType)" />
</svg>
{{scope.row.name}}
</template>
</el-table-column>
<el-table-column
prop="modifiedTime"
:label="$t('list.title.moditime')"
sortable
min-width="3"
></el-table-column>
<el-table-column prop="size" :label="$t('list.title.size')" sortable min-width="2"></el-table-column>
<el-table-column :label="$t('list.title.operation')" sortable min-width="2">
<template slot-scope="scope">
<span class="icon" @click.stop="go(file,'_blank')">
<i
class="fa fa-external-link faa-shake animated-hover"
:title="$t('list.opt.newTab')"
aria-hidden="true"
></i>
</span>
<span class="icon" @click="go(file,'down')">
<i class="fa fa-download faa-shake animated-hover" :title="$t('list.opt.download')"></i>
</span>
</template>
</el-table-column>
</el-table> -->
<div v-show="files.length==0" class="has-text-centered no-content"></div>
<div v-show="loading" class="pageloader is-active">
<span class="title">{{$t('list.loading')}}</span>
@ -104,29 +149,34 @@ export default {
computed: {
columns() {
return [
{ name: this.$t('list.title.file'), style: "" },
{ name: this.$t("list.title.file"), style: "" },
{
name: this.$t('list.title.moditime'),
name: this.$t("list.title.moditime"),
style: "width:20%",
class: "is-hidden-mobile is-hidden-touch"
},
{
name: this.$t('list.title.size'),
name: this.$t("list.title.size"),
style: "width:10.5%",
class: "is-hidden-mobile is-hidden-touch"
},
{
name: this.$t('list.title.operation'),
name: this.$t("list.title.operation"),
style: "width:10%",
class: "is-hidden-mobile is-hidden-touch"
}
]
];
}
},
mounted() {
this.render();
},
methods: {
cellClass(row) {
if (row.columnIndex != 0) {
return "is-hidden-mobile is-hidden-touch has-text-drak";
}
},
render() {
let path = window.location.pathname;
this.loading = true;
@ -162,19 +212,19 @@ export default {
if (!path.match("/[0-9]+:search")) {
// HEAD.md
if (item.name === "HEAD.md") {
this.$emit("headmd", {
this.headmd = {
display: true,
file: item,
path: path + item.name
});
};
}
// REDEME.md
if (item.name === "README.md") {
this.$emit("readmemd", {
this.readmemd = {
display: true,
file: item,
path: path + item.name
});
};
}
}
return {

View File

@ -1,46 +1,50 @@
const path = require("path");
const cdnDependencies = require('./dependencies-cdn')
const cdnDependencies = require("./dependencies-cdn");
function resolve(dir) {
return path.join(__dirname, dir);
}
// 基础路径 注意发布之前要先修改这里
let publicPath = process.env.VUE_APP_PUBLIC_PATH || '/'
let publicPath = process.env.VUE_APP_PUBLIC_PATH || "/";
// 设置不参与构建的库
let externals = {}
cdnDependencies.forEach(item => { externals[item.name] = item.library })
let externals = {};
cdnDependencies.forEach((item) => {
externals[item.name] = item.library;
});
// 引入文件的 cdn 链接
const cdn = {
css: cdnDependencies.map(e => e.css).filter(e => e),
js: cdnDependencies.map(e => e.js).filter(e => e)
}
css: cdnDependencies.map((e) => e.css).filter((e) => e),
js: cdnDependencies.map((e) => e.js).filter((e) => e),
};
module.exports = {
publicPath,
lintOnSave: true,
configureWebpack: config => {
const configNew = {}
if (process.env.NODE_ENV === 'production') {
configNew.externals = externals
configureWebpack: (config) => {
const configNew = {};
if (process.env.NODE_ENV === "production") {
configNew.externals = externals;
}
return configNew
return configNew;
},
chainWebpack: (config) => {
/**
* 添加 CDN 参数到 htmlWebpackPlugin 配置中
*/
config.plugin('html').tap(args => {
if (process.env.NODE_ENV === 'production') {
args[0].cdn = cdn
config.plugin("html").tap((args) => {
if (process.env.NODE_ENV === "production") {
args[0].cdn = cdn;
} else {
args[0].cdn = []
args[0].cdn = {
css: cdnDependencies.filter((e) => e.name==="").map((e) => e.css),
};
}
return args
})
return args;
});
config.resolve.alias
.set("@", resolve("src"))
.set("@assets", resolve("src/assets"))
@ -50,8 +54,8 @@ module.exports = {
// 分析工具
if (process.env.npm_config_report) {
config
.plugin('webpack-bundle-analyzer')
.use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin)
.plugin("webpack-bundle-analyzer")
.use(require("webpack-bundle-analyzer").BundleAnalyzerPlugin);
}
},
@ -74,10 +78,10 @@ module.exports = {
pluginOptions: {
i18n: {
locale: 'zh-chs',
fallbackLocale: 'en',
localeDir: 'locales',
enableInSFC: true
}
}
locale: "zh-chs",
fallbackLocale: "en",
localeDir: "locales",
enableInSFC: true,
},
},
};