umi项目中的一些趣事

前言

出于某些安全问题,需要把HTML中框架注入的umi版本信息去掉,那要怎么搞呢~

方案

查找官方文档,没发现可以去掉注入信息的方法,但在一番折腾后😉终究还是解决了~

发现

版本信息是从这里注入的~

复制代码
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;

.......

var _default = api => {
  api.addHTMLHeadScripts(() => [{
    content: `//! umi version: ${process.env.UMI_VERSION}`
  }]);
  api.addEntryCode(() => `
    window.g_umi = {
      version: '${process.env.UMI_VERSION}',
    };
  `);
};

解决

复制代码
export default defineConfig({
  hash: true,
  routes,
  umiInfo: false,
  title: 'Ant Design Pro',
  access: {},
  publicPath: './',
  antd: {},
  access: {},
  request: {},
  mfsu: {},
  fastRefresh: true,
  ......
});

未配置前

配置后

最后

这是比较简洁的处理方案,如果后续版本去掉这个配置的话我们要怎么去处理呢? 其实是可以通过打包插件匹配去除或者混淆,方法很多主要还是看项目需求啦😊

相关推荐
倚栏听风雨2 分钟前
typescript 方法前面加* 是什么意思
前端
狮子不白10 分钟前
C#WEB 防重复提交控制
开发语言·前端·程序人生·c#
菜鸟‍10 分钟前
【前端学习】阿里前端面试题
前端·javascript·学习
Jonathan Star13 分钟前
LangFlow前端源码深度解析:核心模块与关键实现
前端
用户479492835691518 分钟前
告别span嵌套地狱:CSS Highlights API重新定义语法高亮
前端·javascript·css
无责任此方_修行中25 分钟前
一行代码的“法律陷阱”:开发者必须了解的开源许可证知识
前端·后端·开源
合作小小程序员小小店44 分钟前
web网页开发,在线物流管理系统,基于Idea,html,css,jQuery,jsp,java,SSM,mysql
java·前端·后端·spring·intellij-idea·web
GISer_Jing1 小时前
OSG底层从Texture读取Image实现:readImageFromCurrentTexture
前端·c++·3d
Charles_go2 小时前
C#8、有哪些访问修饰符
java·前端·c#