若依框架免登陆、页面全屏显示、打开新标签页(看板大屏)

  • 效果如下(先演示的是正常情况下,系统需要登陆,页面正常会显示左边栏和上边栏;接着是看板页面在新标签页打开且全屏显示;最后是直接输对应页面的路由免登陆进来的效果)
  • 1.免登陆:找到项目目录下src/permission.js ,在白名单whiteList 中添加上你的看板大屏路由地址,这样就不会校验该路由的token(这里我添加的是**'/mesBoard/mesqualityboard'**);

要注意的是此时免登陆进来也会报404,有权限限制,将前端所有权限(v-hasPermi)去掉,后端Controller中的这两个注解:Verify、ActionPermissionFilter去掉即可

  • 2.页面全屏显示: 找到项目目录下src/route/index.js,将看板大屏页面配置加到路由constantRoutes中,这样就不会走若依的权限系统(如下图3)加到固定的前端框架中,会将该看板大屏页面以新页面的形式全屏显示,也就去掉了框架的左边栏和上边栏。
  • 3.打开新标签页: 找到项目文件路径下src/layout/components/Sidebar/Link.vue文件(这是我项目的文件路径,可能不一样,找到你项目中的Link.vue文件即可),在<script setup></script>标签中新增方法:

function isNewPage(){

return props.to==='/mesBoard/mesqualityboard' ;//如果有多个页面需要在新标签页打开,用||分隔路由即可

}

并在linkProps方法中新增判断:

if(isNewPage()){

return{

to: props.to,

target:'_blank',

rel: 'noopener'

}

}

Link.vue完整代码:

html 复制代码
<template>
  <component :is="type" v-bind="linkProps()">
    <slot />
  </component>
</template>

<script setup>
import { isExternal } from '@/utils/validate'

const props = defineProps({
  to: {
    type: [String, Object],
    required: true,
  },
})

const isExt = computed(() => {
  return isExternal(props.to)
})

const type = computed(() => {
  if (isExt.value) {
    return 'a'
  }
  return 'router-link'
})

//需要在新标签页打开的路由
function isNewPage(){
  return  props.to==='/mesBoard/mesqualityboard' ;//如果有多个页面需要在新标签页打开,用||分隔路由
}

function linkProps() {
  if (isExt.value) {
    return {
      href: props.to,
      target: '_blank',
      rel: 'noopener',
    }
  }
  //在isNewPage中的路由打开时,在新标签页打开
  if(isNewPage()){
  return{
    to: props.to,
    target:'_blank',
    rel: 'noopener'
  }
}

  return {
    to: props.to,
  }
}
</script>
相关推荐
前端 贾公子9 小时前
第 5 章:Codex 从可运行程序到可交付工具
java·前端·数据库
用户3600555790010 小时前
Kestrel_VLLM - 26 · 发射空档三步曲:事件计时 → nsys → 判别实验
前端
echome88810 小时前
JavaScript async/await 错误处理:别让 Promise 静默失败
开发语言·前端·javascript·promise
PedroQue9910 小时前
v0.2.0 架构升级:class + reactive 重塑状态管理
前端·uni-app
鶴哥只手遮天10 小时前
Angular 22 源码级深度解析-第 02 章 编译链路总览:从模板字符串到 `ɵɵ` 指令
前端·开源·angular.js
尘世中一位迷途小书童10 小时前
别再堆万字 Prompt:用 Agent Skills 给团队写一个「前端 Review」Skill
前端·ai编程·cursor
aixingpan10 小时前
aixingpan.cn API开发文档:api_docs_bichart_common2接口指南
前端·php
super_Omni10 小时前
text/PDF/Word → 解析成纯文本 → 分词 → 词表匹配 → 加权打分 → 低于阈值
前端·chrome
阶进遐10 小时前
浏览器工具自制指南·对话导出(3):消息池设计
前端
SameX10 小时前
HarmonyOS 用 relationalStore 做阅读统计 App —— 5 张表背后的 5 个 schema 决策
前端