- 首先路由结构是树形结构数据,所以我们先写个遍历树形结构函数
async treeIterator(tree, func) {
await Promise.all(
tree.map(async (node) => {
func(node);
node.children && (await this.treeIterator(node.children, func));
})
);
},
- 在快捷跳转点击事件中写
async funcToNewDetail() {
let activeIndex = this.$refs.carousel.activeIndex;
let id = this.sxoaList[activeIndex].id;
let isFound = false;
await this.treeIterator(this.$store.getters.permission_routes, (node) => {
if (node.name === "Prolist" && node.hidden === false) {
this.$router.push({
path: "/informationCenter/projectDynamics/listDetail",
query: {
id: id,
type: "news",
},
});
isFound = true;
}
});
if (!isFound) {
this.$message({
message: "您没有查看新闻信息详情页面权限!",
type: "warning",
});
}
},