forked from github/dataease
Merge branch 'dev' of github.com:dataease/dataease into dev
This commit is contained in:
commit
f9f1bea6f5
@ -3,19 +3,34 @@ import store from './store'
|
||||
// import { Message } from 'element-ui'
|
||||
import NProgress from 'nprogress' // progress bar
|
||||
import 'nprogress/nprogress.css' // progress bar style
|
||||
import { getToken } from '@/utils/auth' // get token from cookie
|
||||
import {
|
||||
getToken
|
||||
} from '@/utils/auth' // get token from cookie
|
||||
import getPageTitle from '@/utils/get-page-title'
|
||||
import { buildMenus } from '@/api/system/menu'
|
||||
import { filterAsyncRouter } from '@/store/modules/permission'
|
||||
import {
|
||||
buildMenus
|
||||
} from '@/api/system/menu'
|
||||
import {
|
||||
filterAsyncRouter
|
||||
} from '@/store/modules/permission'
|
||||
import {
|
||||
isMobile
|
||||
} from '@/utils/index'
|
||||
// import bus from './utils/bus'
|
||||
|
||||
NProgress.configure({ showSpinner: false }) // NProgress Configuration
|
||||
NProgress.configure({
|
||||
showSpinner: false
|
||||
}) // NProgress Configuration
|
||||
|
||||
const whiteList = ['/login', '/401', '/404', '/delink', '/nolic'] // no redirect whitelist
|
||||
|
||||
router.beforeEach(async(to, from, next) => {
|
||||
// start progress bar
|
||||
NProgress.start()
|
||||
if (isMobile()) {
|
||||
window.location.href = window.origin + '/app.html'
|
||||
NProgress.done()
|
||||
}
|
||||
|
||||
// set page title
|
||||
document.title = getPageTitle(to.meta.title)
|
||||
@ -25,7 +40,9 @@ router.beforeEach(async(to, from, next) => {
|
||||
if (hasToken) {
|
||||
if (to.path === '/login') {
|
||||
// if is logged in, redirect to the home page
|
||||
next({ path: '/' })
|
||||
next({
|
||||
path: '/'
|
||||
})
|
||||
NProgress.done()
|
||||
} else {
|
||||
const hasGetUserInfo = store.getters.name
|
||||
@ -77,11 +94,18 @@ export const loadMenus = (next, to) => {
|
||||
const datas = res.data
|
||||
const filterDatas = filterRouter(datas)
|
||||
const asyncRouter = filterAsyncRouter(filterDatas)
|
||||
asyncRouter.push({ path: '*', redirect: '/404', hidden: true })
|
||||
asyncRouter.push({
|
||||
path: '*',
|
||||
redirect: '/404',
|
||||
hidden: true
|
||||
})
|
||||
store.dispatch('permission/GenerateRoutes', asyncRouter).then(() => { // 存储路由
|
||||
router.addRoutes(asyncRouter)
|
||||
if (pathValid(to.path, asyncRouter)) {
|
||||
next({ ...to, replace: true })
|
||||
next({
|
||||
...to,
|
||||
replace: true
|
||||
})
|
||||
} else {
|
||||
next('/')
|
||||
}
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
import Cookies from 'js-cookie'
|
||||
export function timeSection(date, type) {
|
||||
if (!date) {
|
||||
@ -98,7 +97,9 @@ export function parseTime(time, cFormat) {
|
||||
const time_str = format.replace(/{([ymdhisa])+}/g, (result, key) => {
|
||||
const value = formatObj[key]
|
||||
// Note: getDay() returns 0 on Sunday
|
||||
if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value ] }
|
||||
if (key === 'a') {
|
||||
return ['日', '一', '二', '三', '四', '五', '六'][value]
|
||||
}
|
||||
return value.toString().padStart(2, '0')
|
||||
})
|
||||
return time_str
|
||||
@ -115,19 +116,19 @@ export function hasClass(ele, cls) {
|
||||
}
|
||||
|
||||
/**
|
||||
* Add class to element
|
||||
* @param {HTMLElement} elm
|
||||
* @param {string} cls
|
||||
*/
|
||||
* Add class to element
|
||||
* @param {HTMLElement} elm
|
||||
* @param {string} cls
|
||||
*/
|
||||
export function addClass(ele, cls) {
|
||||
if (!hasClass(ele, cls)) ele.className += ' ' + cls
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove class from element
|
||||
* @param {HTMLElement} elm
|
||||
* @param {string} cls
|
||||
*/
|
||||
* Remove class from element
|
||||
* @param {HTMLElement} elm
|
||||
* @param {string} cls
|
||||
*/
|
||||
export function removeClass(ele, cls) {
|
||||
if (hasClass(ele, cls)) {
|
||||
const reg = new RegExp('(\\s|^)' + cls + '(\\s|$)')
|
||||
@ -189,12 +190,12 @@ export function param2Obj(url) {
|
||||
}
|
||||
return JSON.parse(
|
||||
'{"' +
|
||||
decodeURIComponent(search)
|
||||
.replace(/"/g, '\\"')
|
||||
.replace(/&/g, '","')
|
||||
.replace(/=/g, '":"')
|
||||
.replace(/\+/g, ' ') +
|
||||
'"}'
|
||||
decodeURIComponent(search)
|
||||
.replace(/"/g, '\\"')
|
||||
.replace(/&/g, '","')
|
||||
.replace(/=/g, '":"')
|
||||
.replace(/\+/g, ' ') +
|
||||
'"}'
|
||||
)
|
||||
}
|
||||
|
||||
@ -216,7 +217,9 @@ export function formatCondition(param) {
|
||||
if (!param) {
|
||||
return null
|
||||
}
|
||||
const result = { conditions: [] }
|
||||
const result = {
|
||||
conditions: []
|
||||
}
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
for (const [key, value] of Object.entries(param)) {
|
||||
result.conditions.push(value)
|
||||
@ -273,13 +276,19 @@ export function getQueryVariable(variable) {
|
||||
if (!query) {
|
||||
query = Cookies.get(variable)
|
||||
}
|
||||
if (query !== undefined){
|
||||
if (query !== undefined) {
|
||||
const vars = query.split('&')
|
||||
for (var i = 0; i < vars.length; i++) {
|
||||
const pair = vars[i].split('=')
|
||||
if (pair[0] === variable) { return pair[1] }
|
||||
if (pair[0] === variable) {
|
||||
return pair[1]
|
||||
}
|
||||
}
|
||||
}
|
||||
return (false)
|
||||
}
|
||||
|
||||
export function isMobile() {
|
||||
const flag = navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)
|
||||
return flag
|
||||
}
|
||||
|
@ -131,6 +131,7 @@ export default {
|
||||
},
|
||||
watch: {
|
||||
chart: function() {
|
||||
this.resetPage()
|
||||
this.init()
|
||||
}
|
||||
},
|
||||
|
@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<de-container>
|
||||
<de-aside-container style="padding: 0 10px;">
|
||||
<de-aside-container>
|
||||
<el-tabs v-model="activeName" class="tab-panel" :stretch="true" @tab-click="handleClick">
|
||||
<el-tab-pane name="PanelList">
|
||||
<span slot="label"><i class="el-icon-document tablepanel-i" />{{ $t('panel.panel_list') }}</span>
|
||||
@ -132,6 +132,10 @@ export default {
|
||||
/* align-items: center;*/
|
||||
/* justify-content: center;*/
|
||||
/*}*/
|
||||
.tab-panel{
|
||||
height: 100%;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.tab-panel>>>.el-tabs__nav-wrap{
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user