diff --git a/src/assets/style/public-class.scss b/src/assets/style/public-class.scss index dc41e4e6..a851d827 100644 --- a/src/assets/style/public-class.scss +++ b/src/assets/style/public-class.scss @@ -34,14 +34,6 @@ .#{$prefix}-fr { float: right; } -.#{$prefix}-clearfix:before, -.#{$prefix}-clearfix:after { - display: table; - content: ""; -} -.#{$prefix}-clearfix:after { - clear: both -} // 边距相关 $sizes: (0, 5, 10, 15, 20); diff --git a/src/components/d2-container/components/d2-source.vue b/src/components/d2-container/components/d2-source.vue index 5cb52e4b..0ce2b05a 100644 --- a/src/components/d2-container/components/d2-source.vue +++ b/src/components/d2-container/components/d2-source.vue @@ -4,7 +4,7 @@ class="d2-source" :class="{ 'd2-source--active': isActive }" @click="handleClick"> - SourceCode + 本页源码 diff --git a/src/components/d2-highlight/index.vue b/src/components/d2-highlight/index.vue index 0e838a7a..6c5c53d8 100644 --- a/src/components/d2-highlight/index.vue +++ b/src/components/d2-highlight/index.vue @@ -3,11 +3,12 @@ diff --git a/src/layout/header-aside/components/header-error-log/components/list/index.vue b/src/layout/header-aside/components/header-error-log/components/list/index.vue deleted file mode 100644 index 2a3815bb..00000000 --- a/src/layout/header-aside/components/header-error-log/components/list/index.vue +++ /dev/null @@ -1,178 +0,0 @@ - - - - - diff --git a/src/layout/header-aside/components/header-error-log/index.vue b/src/layout/header-aside/components/header-error-log/index.vue deleted file mode 100644 index 960c9bd2..00000000 --- a/src/layout/header-aside/components/header-error-log/index.vue +++ /dev/null @@ -1,82 +0,0 @@ - - - diff --git a/src/layout/header-aside/components/header-log/index.vue b/src/layout/header-aside/components/header-log/index.vue new file mode 100644 index 00000000..063452b2 --- /dev/null +++ b/src/layout/header-aside/components/header-log/index.vue @@ -0,0 +1,54 @@ + + + diff --git a/src/layout/header-aside/layout.vue b/src/layout/header-aside/layout.vue index f440ab40..c18e10de 100644 --- a/src/layout/header-aside/layout.vue +++ b/src/layout/header-aside/layout.vue @@ -27,7 +27,7 @@
- + @@ -89,7 +89,7 @@ import d2HeaderSearch from './components/header-search' import d2HeaderSize from './components/header-size' import d2HeaderTheme from './components/header-theme' import d2HeaderUser from './components/header-user' -import d2HeaderErrorLog from './components/header-error-log' +import d2HeaderLog from './components/header-log' import { mapState, mapGetters, mapActions } from 'vuex' import mixinSearch from './mixins/search' export default { @@ -106,7 +106,7 @@ export default { d2HeaderSize, d2HeaderTheme, d2HeaderUser, - d2HeaderErrorLog + d2HeaderLog }, data () { return { diff --git a/src/libs/util.import.development.js b/src/libs/util.import.development.js index b0160a4a..f97259b5 100755 --- a/src/libs/util.import.development.js +++ b/src/libs/util.import.development.js @@ -1 +1 @@ -module.exports = file => require('@/pages/' + file).default +module.exports = file => require('@/views/' + file).default diff --git a/src/libs/util.import.production.js b/src/libs/util.import.production.js index ca8487f2..87b91d69 100755 --- a/src/libs/util.import.production.js +++ b/src/libs/util.import.production.js @@ -1 +1 @@ -module.exports = file => () => import('@/pages/' + file) +module.exports = file => () => import('@/views/' + file) diff --git a/src/pages/login/index.js b/src/pages/login/index.js deleted file mode 100644 index ddb7de83..00000000 --- a/src/pages/login/index.js +++ /dev/null @@ -1,3 +0,0 @@ -import page from './page' - -export default page diff --git a/src/plugin/error/index.js b/src/plugin/error/index.js index f07eb7a0..66b60008 100644 --- a/src/plugin/error/index.js +++ b/src/plugin/error/index.js @@ -3,14 +3,16 @@ import util from '@/libs/util' export default { install (Vue, options) { - Vue.config.errorHandler = function (err, instance, info) { + Vue.config.errorHandler = function (error, instance, info) { Vue.nextTick(() => { - // 添加 log - store.dispatch('d2admin/log/add', { - type: 'error', - err, - instance, - info + // store 追加 log + store.dispatch('d2admin/log/push', { + message: `${info}: ${error.message}`, + type: 'danger', + meta: { + error, + instance + } }) // 只在开发模式下打印 log if (process.env.NODE_ENV === 'development') { @@ -20,7 +22,7 @@ export default { util.log.danger('>>>>>> Vue 实例 >>>>>>') console.log(instance) util.log.danger('>>>>>> Error >>>>>>') - console.log(err) + console.log(error) } }) } diff --git a/src/plugin/log/index.js b/src/plugin/log/index.js index e37bfd6d..05e27544 100644 --- a/src/plugin/log/index.js +++ b/src/plugin/log/index.js @@ -4,17 +4,21 @@ import util from '@/libs/util' export default { install (Vue, options) { // 快速打印 log - Vue.prototype.$log = util.log - // 快速记录日志 - Vue.prototype.$logAdd = function (info, show = true) { - // store 赋值 - store.dispatch('d2admin/log/add', { - type: 'log', - info - }) - // 显示在控制台 - if (show && process.env.NODE_ENV === 'development') { - util.log.default(info) + Vue.prototype.$log = { + ...util.log, + push (data) { + if (typeof data === 'string') { + // 如果传递来的数据是字符串 + // 赋值给 message 字段 + // 为了方便使用 + // eg: this.$log.push('foo text') + store.dispatch('d2admin/log/push', { + message: data + }) + } else if (typeof data === 'object') { + // 如果传递来的数据是对象 + store.dispatch('d2admin/log/push', data) + } } } } diff --git a/src/router/routes.js b/src/router/routes.js index e9c54be7..30629236 100644 --- a/src/router/routes.js +++ b/src/router/routes.js @@ -22,38 +22,38 @@ const frameIn = [ redirect: { name: 'index' }, component: layoutHeaderAside, children: [ - // 首页 必须 name:index + // 首页 { path: 'index', name: 'index', meta: { auth: true }, - component: _import('index') + component: _import('system/index') + }, + // 系统 前端日志 + { + path: 'log', + name: 'log', + meta: { + title: '前端日志', + auth: true + }, + component: _import('system/log') }, // 刷新页面 必须保留 { path: 'refresh', name: 'refresh', hidden: true, - component: { - beforeRouteEnter (to, from, next) { - next(instance => instance.$router.replace(from.fullPath)) - }, - render: h => h() - } + component: _import('system/function/refresh') }, // 页面重定向 必须保留 { path: 'redirect/:route*', name: 'redirect', hidden: true, - component: { - beforeRouteEnter (to, from, next) { - next(instance => instance.$router.replace(JSON.parse(from.params.route))) - }, - render: h => h() - } + component: _import('system/function/redirect') } ] }, @@ -76,7 +76,7 @@ const frameOut = [ { path: '/login', name: 'login', - component: _import('login') + component: _import('system/login') } ] @@ -84,11 +84,10 @@ const frameOut = [ * 错误页面 */ const errorPage = [ - // 404 { path: '*', name: '404', - component: _import('error-page-404') + component: _import('system/error/404') } ] diff --git a/src/store/modules/d2admin/modules/log.js b/src/store/modules/d2admin/modules/log.js index 22f327ea..4d3d2aee 100644 --- a/src/store/modules/d2admin/modules/log.js +++ b/src/store/modules/d2admin/modules/log.js @@ -1,12 +1,17 @@ import dayjs from 'dayjs' -import { get, toString } from 'lodash' +import { get } from 'lodash' import util from '@/libs/util.js' export default { namespaced: true, state: { // 错误日志 - list: [] + // + 日志条目的属性 + // - message 必须 日志信息 + // - type 非必须 类型 success | warning | info(默认) | error + // - time 必须 日志记录时间 + // - meta 非必须 其它携带信息 + log: [] }, getters: { /** @@ -14,61 +19,59 @@ export default { * @param {*} state vuex state */ length (state) { - return state.list.length + return state.log.length }, /** * @description 返回现存 log (error) 的条数 * @param {*} state vuex state */ lengthError (state) { - return state.list.filter(l => l.type === 'error').length + return state.log.filter(l => l.type === 'error').length } }, actions: { /** * @description 添加一个日志 - * @param {Object} param type {String} 类型 - * @param {Object} param err {Error} 错误对象 - * @param {Object} param instance {Object} vue 实例 - * @param {Object} param info {String} 信息 + * @param {String} param message {String} 信息 + * @param {String} param type {String} 类型 + * @param {Object} param meta {Object} 附带的信息 */ - add ({ state, rootState }, { type, err, instance, info }) { - // store 赋值 - state.list.push(Object.assign({ - // 记录类型 "log" or "error" - type: 'log', - // 信息 - info: '', - // 错误对象 - err: '', - // vue 实例 - instance: '', - // 当前用户信息 - user: rootState.d2admin.user.info, - // 当前用户的 uuid - uuid: util.cookies.get('uuid'), - // 当前的 token - token: util.cookies.get('token'), - // 当前地址 - url: get(window, 'location.href', ''), - // 当前时间 - time: dayjs().format('YYYY-M-D HH:mm:ss') - }, { + push ({ rootState, commit }, { message, type = 'info', meta }) { + commit('push', { + message, type, - err, - instance, - info: toString(info) - })) + time: dayjs().format('YYYY-MM-DD HH:mm:ss'), + meta: { + // 当前用户信息 + user: rootState.d2admin.user.info, + // 当前用户的 uuid + uuid: util.cookies.get('uuid'), + // 当前的 token + token: util.cookies.get('token'), + // 当前地址 + url: get(window, 'location.href', ''), + // 用户设置 + ...meta + } + }) } }, mutations: { + /** + * @description 添加日志 + * @param {Object} state vuex state + * @param {Object} log data + */ + push (state, log) { + state.log.push(log) + }, /** * @description 清空日志 * @param {Object} state vuex state */ clean (state) { // store 赋值 - state.list = [] + state.log = [] } } } diff --git a/src/pages/demo/business/index/index.vue b/src/views/demo/business/index/index.vue similarity index 100% rename from src/pages/demo/business/index/index.vue rename to src/views/demo/business/index/index.vue diff --git a/src/pages/demo/business/issues/142/edit-cache-db.vue b/src/views/demo/business/issues/142/edit-cache-db.vue similarity index 100% rename from src/pages/demo/business/issues/142/edit-cache-db.vue rename to src/views/demo/business/issues/142/edit-cache-db.vue diff --git a/src/pages/demo/business/issues/142/edit.vue b/src/views/demo/business/issues/142/edit.vue similarity index 100% rename from src/pages/demo/business/issues/142/edit.vue rename to src/views/demo/business/issues/142/edit.vue diff --git a/src/pages/demo/business/issues/142/index.vue b/src/views/demo/business/issues/142/index.vue similarity index 100% rename from src/pages/demo/business/issues/142/index.vue rename to src/views/demo/business/issues/142/index.vue diff --git a/src/pages/demo/business/issues/142/mixins/index.js b/src/views/demo/business/issues/142/mixins/index.js similarity index 100% rename from src/pages/demo/business/issues/142/mixins/index.js rename to src/views/demo/business/issues/142/mixins/index.js diff --git a/src/pages/demo/business/table/1/componnets/BooleanControl/index.vue b/src/views/demo/business/table/1/componnets/BooleanControl/index.vue similarity index 100% rename from src/pages/demo/business/table/1/componnets/BooleanControl/index.vue rename to src/views/demo/business/table/1/componnets/BooleanControl/index.vue diff --git a/src/pages/demo/business/table/1/componnets/BooleanControlMini/index.vue b/src/views/demo/business/table/1/componnets/BooleanControlMini/index.vue similarity index 100% rename from src/pages/demo/business/table/1/componnets/BooleanControlMini/index.vue rename to src/views/demo/business/table/1/componnets/BooleanControlMini/index.vue diff --git a/src/pages/demo/business/table/1/componnets/PageFooter/index.vue b/src/views/demo/business/table/1/componnets/PageFooter/index.vue similarity index 100% rename from src/pages/demo/business/table/1/componnets/PageFooter/index.vue rename to src/views/demo/business/table/1/componnets/PageFooter/index.vue diff --git a/src/pages/demo/business/table/1/componnets/PageHeader/index.vue b/src/views/demo/business/table/1/componnets/PageHeader/index.vue similarity index 100% rename from src/pages/demo/business/table/1/componnets/PageHeader/index.vue rename to src/views/demo/business/table/1/componnets/PageHeader/index.vue diff --git a/src/pages/demo/business/table/1/componnets/PageMain/index.vue b/src/views/demo/business/table/1/componnets/PageMain/index.vue similarity index 100% rename from src/pages/demo/business/table/1/componnets/PageMain/index.vue rename to src/views/demo/business/table/1/componnets/PageMain/index.vue diff --git a/src/pages/demo/business/table/1/index.vue b/src/views/demo/business/table/1/index.vue similarity index 100% rename from src/pages/demo/business/table/1/index.vue rename to src/views/demo/business/table/1/index.vue diff --git a/src/pages/demo/charts/index/index.vue b/src/views/demo/charts/index/index.vue similarity index 100% rename from src/pages/demo/charts/index/index.vue rename to src/views/demo/charts/index/index.vue diff --git a/src/pages/demo/charts/list/_data/beijing.json.REMOVED.git-id b/src/views/demo/charts/list/_data/beijing.json.REMOVED.git-id similarity index 100% rename from src/pages/demo/charts/list/_data/beijing.json.REMOVED.git-id rename to src/views/demo/charts/list/_data/beijing.json.REMOVED.git-id diff --git a/src/pages/demo/charts/list/_data/china.json.REMOVED.git-id b/src/views/demo/charts/list/_data/china.json.REMOVED.git-id similarity index 100% rename from src/pages/demo/charts/list/_data/china.json.REMOVED.git-id rename to src/views/demo/charts/list/_data/china.json.REMOVED.git-id diff --git a/src/pages/demo/charts/list/_mixin/list.js b/src/views/demo/charts/list/_mixin/list.js similarity index 100% rename from src/pages/demo/charts/list/_mixin/list.js rename to src/views/demo/charts/list/_mixin/list.js diff --git a/src/pages/demo/charts/list/bar/demo1/index.vue b/src/views/demo/charts/list/bar/demo1/index.vue similarity index 95% rename from src/pages/demo/charts/list/bar/demo1/index.vue rename to src/views/demo/charts/list/bar/demo1/index.vue index bb1f0308..b3c61f36 100644 --- a/src/pages/demo/charts/list/bar/demo1/index.vue +++ b/src/views/demo/charts/list/bar/demo1/index.vue @@ -11,7 +11,7 @@ diff --git a/src/pages/login/image/logo@2x.png.REMOVED.git-id b/src/views/system/login/image/logo@2x.png.REMOVED.git-id similarity index 100% rename from src/pages/login/image/logo@2x.png.REMOVED.git-id rename to src/views/system/login/image/logo@2x.png.REMOVED.git-id diff --git a/src/pages/index/index.js b/src/views/system/login/index.js similarity index 100% rename from src/pages/index/index.js rename to src/views/system/login/index.js diff --git a/src/pages/login/page.vue.REMOVED.git-id b/src/views/system/login/page.vue.REMOVED.git-id similarity index 100% rename from src/pages/login/page.vue.REMOVED.git-id rename to src/views/system/login/page.vue.REMOVED.git-id