mirror of
https://github.com/pure-admin/vue-pure-admin.git
synced 2025-06-08 01:17:23 +08:00
fix: showLink is false,children menu 404
This commit is contained in:
parent
c8e90b4bd7
commit
45c2c4a301
@ -49,6 +49,13 @@ export const constantRoutesArr: Array<RouteComponent> = ascending(
|
|||||||
constantRoutes
|
constantRoutes
|
||||||
).concat(...remainingRouter);
|
).concat(...remainingRouter);
|
||||||
|
|
||||||
|
// 过滤meta中showLink为false的路由
|
||||||
|
export const filterTree = data => {
|
||||||
|
const newTree = data.filter(v => v.meta.showLink);
|
||||||
|
newTree.forEach(v => v.children && (v.children = filterTree(v.children)));
|
||||||
|
return newTree;
|
||||||
|
};
|
||||||
|
|
||||||
// 过滤后端传来的动态路由 重新生成规范路由
|
// 过滤后端传来的动态路由 重新生成规范路由
|
||||||
export const addAsyncRoutes = (arrRoutes: Array<RouteComponent>) => {
|
export const addAsyncRoutes = (arrRoutes: Array<RouteComponent>) => {
|
||||||
if (!arrRoutes || !arrRoutes.length) return;
|
if (!arrRoutes || !arrRoutes.length) return;
|
||||||
@ -67,7 +74,7 @@ export const addAsyncRoutes = (arrRoutes: Array<RouteComponent>) => {
|
|||||||
|
|
||||||
export const router: Router = createRouter({
|
export const router: Router = createRouter({
|
||||||
history: createWebHashHistory(),
|
history: createWebHashHistory(),
|
||||||
routes: ascending(constantRoutes).concat(...remainingRouter),
|
routes: filterTree(ascending(constantRoutes)).concat(...remainingRouter),
|
||||||
scrollBehavior(to, from, savedPosition) {
|
scrollBehavior(to, from, savedPosition) {
|
||||||
return new Promise(resolve => {
|
return new Promise(resolve => {
|
||||||
if (savedPosition) {
|
if (savedPosition) {
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
import { defineStore } from "pinia";
|
import { defineStore } from "pinia";
|
||||||
import { store } from "/@/store";
|
import { store } from "/@/store";
|
||||||
|
import { constantRoutesArr, ascending, filterTree } from "/@/router/index";
|
||||||
import { constantRoutesArr, ascending } from "/@/router/index";
|
|
||||||
|
|
||||||
export const usePermissionStore = defineStore({
|
export const usePermissionStore = defineStore({
|
||||||
id: "pure-permission",
|
id: "pure-permission",
|
||||||
@ -13,14 +12,6 @@ export const usePermissionStore = defineStore({
|
|||||||
}),
|
}),
|
||||||
actions: {
|
actions: {
|
||||||
asyncActionRoutes(routes) {
|
asyncActionRoutes(routes) {
|
||||||
const filterTree = data => {
|
|
||||||
const newTree = data.filter(v => v.meta.showLink);
|
|
||||||
newTree.forEach(
|
|
||||||
v => v.children && (v.children = filterTree(v.children))
|
|
||||||
);
|
|
||||||
return newTree;
|
|
||||||
};
|
|
||||||
|
|
||||||
if (this.wholeRoutes.length > 0) return;
|
if (this.wholeRoutes.length > 0) return;
|
||||||
this.wholeRoutes = filterTree(
|
this.wholeRoutes = filterTree(
|
||||||
ascending(this.constantRoutes.concat(routes))
|
ascending(this.constantRoutes.concat(routes))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user