前言
想要修改现网的一些小功能,但是又不想走改代码、提工单、审批。。。等烦人的流程,这时候Overrides功能就体现出它强大的功能了,当然只限于本地的浏览器。但不是真正的修改远程服务器的文件
如何使用Overrides功能
在自己电脑创建一个空文件夹,用来保存接下来想要重写的js文件
打开想要调试网站的浏览器控制台,切换到Sources栏,点击更多工具,选择Overrides选项卡,点击选择选择overrides文件夹,会弹出选择文件夹窗口,选择步骤1创建的文件夹,之后会弹出文件夹访问权限,选择允许即可
然后返回到Page选项卡,选择想要重写的js文件,右键选择保存到overrides,这时候就会发现之前创建的overrides文件夹里已经有了刚才保存的文件夹
点击代码美化,就可以在操作栏里去进行代码编辑了,操作完直接Ctrl+S保存就可以了
这时候Network选项卡会有黄色警告,提示可能会存在本地重写,想要取消也很简单,直接在Sources选项卡将重写关闭即可,关闭之后Network警告会消失
总结
- 此办法可以避免一些小功能再次上线,如果前端上线需要各种流程的话可以尝试这种办法应急一下
- 可以作为线上环境断点调试,可扩展性更强,比单纯的打断点更好
- 功能可以随时关闭
缺点
- 只能作为临时方案使用,毕竟不能覆盖所有人,修改也只是在当前电脑生效
- 代码是混淆后的,修改可能会带来一些未知的风险,需要看懂前后的逻辑关系才不会出错
- 新功能上线后文件的contenthash会改变,本地修改的文件就作废