mirror of
https://github.com/pure-admin/pure-admin-thin.git
synced 2025-07-02 05:24:59 +08:00
feat: 新增路由代码
This commit is contained in:
parent
03d9b2b6f8
commit
4d41bccfbf
@ -3,7 +3,7 @@ import vue from "@vitejs/plugin-vue";
|
|||||||
import { viteBuildInfo } from "./info";
|
import { viteBuildInfo } from "./info";
|
||||||
import svgLoader from "vite-svg-loader";
|
import svgLoader from "vite-svg-loader";
|
||||||
import vueJsx from "@vitejs/plugin-vue-jsx";
|
import vueJsx from "@vitejs/plugin-vue-jsx";
|
||||||
import { viteMockServe } from "vite-plugin-mock";
|
// import { viteMockServe } from "vite-plugin-mock";
|
||||||
import { configCompressPlugin } from "./compress";
|
import { configCompressPlugin } from "./compress";
|
||||||
// import ElementPlus from "unplugin-element-plus/vite";
|
// import ElementPlus from "unplugin-element-plus/vite";
|
||||||
import { visualizer } from "rollup-plugin-visualizer";
|
import { visualizer } from "rollup-plugin-visualizer";
|
||||||
@ -16,7 +16,7 @@ export function getPluginsList(
|
|||||||
VITE_CDN: boolean,
|
VITE_CDN: boolean,
|
||||||
VITE_COMPRESSION: ViteCompression
|
VITE_COMPRESSION: ViteCompression
|
||||||
) {
|
) {
|
||||||
const prodMock = true;
|
// const prodMock = true;
|
||||||
const lifecycle = process.env.npm_lifecycle_event;
|
const lifecycle = process.env.npm_lifecycle_event;
|
||||||
return [
|
return [
|
||||||
vue(),
|
vue(),
|
||||||
@ -38,16 +38,16 @@ export function getPluginsList(
|
|||||||
svgLoader(),
|
svgLoader(),
|
||||||
// ElementPlus({}),
|
// ElementPlus({}),
|
||||||
// mock支持
|
// mock支持
|
||||||
viteMockServe({
|
// viteMockServe({
|
||||||
mockPath: "mock",
|
// mockPath: "mock",
|
||||||
localEnabled: command === "serve",
|
// localEnabled: command === "serve",
|
||||||
prodEnabled: command !== "serve" && prodMock,
|
// prodEnabled: command !== "serve" && prodMock,
|
||||||
injectCode: `
|
// injectCode: `
|
||||||
import { setupProdMockServer } from './mockProdServer';
|
// import { setupProdMockServer } from './mockProdServer';
|
||||||
setupProdMockServer();
|
// setupProdMockServer();
|
||||||
`,
|
// `,
|
||||||
logger: false
|
// logger: false
|
||||||
}),
|
// }),
|
||||||
// 打包分析
|
// 打包分析
|
||||||
lifecycle === "report"
|
lifecycle === "report"
|
||||||
? visualizer({ open: true, brotliSize: true, filename: "report.html" })
|
? visualizer({ open: true, brotliSize: true, filename: "report.html" })
|
||||||
|
@ -6,5 +6,5 @@ type Result = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export const getAsyncRoutes = () => {
|
export const getAsyncRoutes = () => {
|
||||||
return http.request<Result>("get", "/getAsyncRoutes");
|
return http.request<Result>("get", "/getRouters");
|
||||||
};
|
};
|
||||||
|
@ -7,7 +7,7 @@ import { debounce, getKeyList } from "@pureadmin/utils";
|
|||||||
import { ascending, filterTree, filterNoPermissionTree } from "@/router/utils";
|
import { ascending, filterTree, filterNoPermissionTree } from "@/router/utils";
|
||||||
|
|
||||||
export const usePermissionStore = defineStore({
|
export const usePermissionStore = defineStore({
|
||||||
id: "pure-permission",
|
id: "ag-permission",
|
||||||
state: () => ({
|
state: () => ({
|
||||||
// 静态路由生成的菜单
|
// 静态路由生成的菜单
|
||||||
constantMenus,
|
constantMenus,
|
||||||
|
@ -76,11 +76,13 @@ class PureHttp {
|
|||||||
return config;
|
return config;
|
||||||
}
|
}
|
||||||
/** 请求白名单,放置一些不需要token的接口(通过设置请求白名单,防止token过期后再请求造成的死循环问题) */
|
/** 请求白名单,放置一些不需要token的接口(通过设置请求白名单,防止token过期后再请求造成的死循环问题) */
|
||||||
const whiteList = ["/refreshToken", "/login"];
|
const whiteList = ["/refreshToken", "/login", "/captchaImage"];
|
||||||
return whiteList.some(v => config.url.indexOf(v) > -1)
|
return whiteList.some(v => config.url.indexOf(v) > -1)
|
||||||
? config
|
? config
|
||||||
: new Promise(resolve => {
|
: new Promise(resolve => {
|
||||||
const data = getToken();
|
const data = getToken();
|
||||||
|
|
||||||
|
console.log("当前token:" + data.accessToken);
|
||||||
if (data) {
|
if (data) {
|
||||||
const now = new Date().getTime();
|
const now = new Date().getTime();
|
||||||
const expired = parseInt(data.expires) - now <= 0;
|
const expired = parseInt(data.expires) - now <= 0;
|
||||||
|
@ -31,7 +31,9 @@ import {
|
|||||||
getIsRememberMe,
|
getIsRememberMe,
|
||||||
savePassword,
|
savePassword,
|
||||||
getPassword,
|
getPassword,
|
||||||
removePassword
|
removePassword,
|
||||||
|
setToken,
|
||||||
|
DataInfo
|
||||||
} from "@/utils/auth";
|
} from "@/utils/auth";
|
||||||
|
|
||||||
import dayIcon from "@/assets/svg/day.svg?component";
|
import dayIcon from "@/assets/svg/day.svg?component";
|
||||||
@ -81,6 +83,13 @@ const onLogin = async (formEl: FormInstance | undefined) => {
|
|||||||
captchaCodeKey: ruleForm.captchaCodeKey
|
captchaCodeKey: ruleForm.captchaCodeKey
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
|
// 登录成功后 将token存储到sessionStorage中
|
||||||
|
const tokenData: DataInfo<Number> = {
|
||||||
|
accessToken: res.data.token,
|
||||||
|
expires: undefined,
|
||||||
|
refreshToken: ""
|
||||||
|
};
|
||||||
|
setToken(tokenData);
|
||||||
// 获取后端路由
|
// 获取后端路由
|
||||||
initRouter().then(() => {
|
initRouter().then(() => {
|
||||||
router.push(getTopMenu(true).path);
|
router.push(getTopMenu(true).path);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user