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,
  ......
});

未配置前

配置后

最后

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

相关推荐
_瑞3 分钟前
深入理解 iOS 渲染原理
前端·ios
IT_陈寒5 分钟前
SpringBoot自动配置失灵?你可能忘了这个关键注解
前端·人工智能·后端
iCOD3R43 分钟前
Skill - kill-ai-slop 解决“AI 味”样式
前端·css·ai编程
shuaijie05181 小时前
强制修改调用接口的api地址。
javascript·vue.js·ecmascript
JerrySir1 小时前
恶意 npm 包只活了 17 分钟:技术面试里,为什么“升级依赖”还不算止血?
javascript·安全
皮音1 小时前
Skill 在项目中的实践 —— 从 Agent 困境到 Skill 工程化
前端
白帽小阳1 小时前
2026前端面试题!(附答案及解析)
javascript·网络·python·安全·web安全·网络安全·护网行动
大龄秃头程序员1 小时前
RN 0.86 新架构实战:TurboModule + Fabric 组件 + iOS 原生容器,完整代码开源
前端·react native
这是个栗子1 小时前
前端开发中的常用工具函数(八)
开发语言·前端·javascript
Hilaku1 小时前
Vue 和 React 真正的差距,不在语法,而在团队犯错成本
前端·javascript·程序员