feat: 新增路由代码

This commit is contained in:
valarchie 2023-06-29 23:00:44 +08:00
parent 03d9b2b6f8
commit 4d41bccfbf
5 changed files with 27 additions and 16 deletions

View File

@ -3,7 +3,7 @@ import vue from "@vitejs/plugin-vue";
import { viteBuildInfo } from "./info";
import svgLoader from "vite-svg-loader";
import vueJsx from "@vitejs/plugin-vue-jsx";
import { viteMockServe } from "vite-plugin-mock";
// import { viteMockServe } from "vite-plugin-mock";
import { configCompressPlugin } from "./compress";
// import ElementPlus from "unplugin-element-plus/vite";
import { visualizer } from "rollup-plugin-visualizer";
@ -16,7 +16,7 @@ export function getPluginsList(
VITE_CDN: boolean,
VITE_COMPRESSION: ViteCompression
) {
const prodMock = true;
// const prodMock = true;
const lifecycle = process.env.npm_lifecycle_event;
return [
vue(),
@ -38,16 +38,16 @@ export function getPluginsList(
svgLoader(),
// ElementPlus({}),
// mock支持
viteMockServe({
mockPath: "mock",
localEnabled: command === "serve",
prodEnabled: command !== "serve" && prodMock,
injectCode: `
import { setupProdMockServer } from './mockProdServer';
setupProdMockServer();
`,
logger: false
}),
// viteMockServe({
// mockPath: "mock",
// localEnabled: command === "serve",
// prodEnabled: command !== "serve" && prodMock,
// injectCode: `
// import { setupProdMockServer } from './mockProdServer';
// setupProdMockServer();
// `,
// logger: false
// }),
// 打包分析
lifecycle === "report"
? visualizer({ open: true, brotliSize: true, filename: "report.html" })

View File

@ -6,5 +6,5 @@ type Result = {
};
export const getAsyncRoutes = () => {
return http.request<Result>("get", "/getAsyncRoutes");
return http.request<Result>("get", "/getRouters");
};

View File

@ -7,7 +7,7 @@ import { debounce, getKeyList } from "@pureadmin/utils";
import { ascending, filterTree, filterNoPermissionTree } from "@/router/utils";
export const usePermissionStore = defineStore({
id: "pure-permission",
id: "ag-permission",
state: () => ({
// 静态路由生成的菜单
constantMenus,

View File

@ -76,11 +76,13 @@ class PureHttp {
return config;
}
/** 请求白名单放置一些不需要token的接口通过设置请求白名单防止token过期后再请求造成的死循环问题 */
const whiteList = ["/refreshToken", "/login"];
const whiteList = ["/refreshToken", "/login", "/captchaImage"];
return whiteList.some(v => config.url.indexOf(v) > -1)
? config
: new Promise(resolve => {
const data = getToken();
console.log("当前token:" + data.accessToken);
if (data) {
const now = new Date().getTime();
const expired = parseInt(data.expires) - now <= 0;

View File

@ -31,7 +31,9 @@ import {
getIsRememberMe,
savePassword,
getPassword,
removePassword
removePassword,
setToken,
DataInfo
} from "@/utils/auth";
import dayIcon from "@/assets/svg/day.svg?component";
@ -81,6 +83,13 @@ const onLogin = async (formEl: FormInstance | undefined) => {
captchaCodeKey: ruleForm.captchaCodeKey
}).then(res => {
if (res.code === 0) {
// tokensessionStorage
const tokenData: DataInfo<Number> = {
accessToken: res.data.token,
expires: undefined,
refreshToken: ""
};
setToken(tokenData);
//
initRouter().then(() => {
router.push(getTopMenu(true).path);