| | |
| | | // make search results more in line with expectations
|
| | | import Fuse from 'fuse.js/dist/fuse.min.js'
|
| | | import path from 'path'
|
| | | import { isHttp } from '@/utils/validate'
|
| | |
|
| | | export default {
|
| | | name: 'HeaderSearch',
|
| | |
| | | change(val) {
|
| | | const path = val.path;
|
| | | const query = val.query;
|
| | | if(this.ishttp(val.path)) {
|
| | | if(isHttp(val.path)) {
|
| | | // http(s):// 路径新窗口打开
|
| | | const pindex = path.indexOf("http");
|
| | | window.open(path.substr(pindex, path.length), "_blank");
|
| | |
| | | if (router.hidden) { continue }
|
| | |
|
| | | const data = {
|
| | | path: !this.ishttp(router.path) ? path.resolve(basePath, router.path) : router.path,
|
| | | path: !isHttp(router.path) ? path.resolve(basePath, router.path) : router.path,
|
| | | title: [...prefixTitle]
|
| | | }
|
| | |
|
| | |
| | | } else {
|
| | | this.options = []
|
| | | }
|
| | | },
|
| | | ishttp(url) {
|
| | | return url.indexOf('http://') !== -1 || url.indexOf('https://') !== -1
|
| | | }
|
| | | }
|
| | | }
|
| | |
| | | |
| | | <script> |
| | | import { constantRoutes } from "@/router"; |
| | | import { isHttp } from "@/utils/validate"; |
| | | |
| | | // 隐藏侧边栏路由 |
| | | const hideList = ['/index', '/user/profile']; |
| | |
| | | if(router.path === "/") { |
| | | router.children[item].path = "/" + router.children[item].path; |
| | | } else { |
| | | if(!this.ishttp(router.children[item].path)) { |
| | | if(!isHttp(router.children[item].path)) { |
| | | router.children[item].path = router.path + "/" + router.children[item].path; |
| | | } |
| | | } |
| | |
| | | handleSelect(key, keyPath) { |
| | | this.currentIndex = key; |
| | | const route = this.routers.find(item => item.path === key); |
| | | if (this.ishttp(key)) { |
| | | if (isHttp(key)) { |
| | | // http(s):// 路径新窗口打开 |
| | | window.open(key, "_blank"); |
| | | } else if (!route || !route.children) { |
| | |
| | | } else { |
| | | this.$store.dispatch('app/toggleSideBarHide', true); |
| | | } |
| | | }, |
| | | ishttp(url) { |
| | | return url.indexOf('http://') !== -1 || url.indexOf('https://') !== -1 |
| | | } |
| | | }, |
| | | }; |
| | |
| | | import { login, logout, getInfo, refreshToken } from '@/api/login'
|
| | | import { getToken, setToken, setExpiresIn, removeToken } from '@/utils/auth'
|
| | | import { isEmpty } from "@/utils/validate"
|
| | | import defAva from '@/assets/images/profile.jpg'
|
| | |
|
| | | const user = {
|
| | | state: {
|
| | |
| | | return new Promise((resolve, reject) => {
|
| | | getInfo().then(res => {
|
| | | const user = res.user
|
| | | const avatar = (user.avatar == "" || user.avatar == null) ? require("@/assets/images/profile.jpg") : user.avatar;
|
| | | const avatar = (isEmpty(user.avatar)) ? defAva : user.avatar
|
| | | if (res.roles && res.roles.length > 0) { // 验证返回的roles是否是一个非空数组
|
| | | commit('SET_ROLES', res.roles)
|
| | | commit('SET_PERMISSIONS', res.permissions)
|
| | |
| | | /**
|
| | | * 判断value字符串是否为空 |
| | | * @param {string} value
|
| | | * @returns {Boolean}
|
| | | */
|
| | | export function isEmpty(value) {
|
| | | if (value == null || value == "" || value == undefined || value == "undefined") {
|
| | | return true;
|
| | | }
|
| | | return false;
|
| | | }
|
| | |
|
| | | /**
|
| | | * 判断url是否是http或https |
| | | * @param {string} url
|
| | | * @returns {Boolean}
|
| | | */
|
| | | export function isHttp(url) {
|
| | | return url.indexOf('http://') !== -1 || url.indexOf('https://') !== -1
|
| | | }
|
| | |
|
| | | /**
|
| | | * 判断path是否为外链
|
| | | * @param {string} path
|
| | | * @returns {Boolean}
|
| | | */
|