赞
踩
在实际项目开发过程中会用到很多第三方包,其中有一些错误或者需要做兼容处理的地方,这时就需要能够在我们的项目中修改特定文件,并把这些修改固定下来,不被install后还原会去。以下介绍三种方法。
该方法需额外安装 patch-package,还需执行命令,生成补丁文件。就能在每次执行install命令时将补丁内容替换到node_modules中对应的源文件中。
npm install patch-package --D
yarn add --dev patch-package postinstall-postinstall
执行如下命令
npx patch-package package-name || yarn patch-package package-name
执行该命令后会在项目根目录中自动创建一个 patches 文件夹,该文件夹中就会出现一个 package-name+version.patch 的补丁文件。其中命令中的 package-name 指的是被修改的依赖包的名字(不是被修改的文件的名字)
手动删除 node_modules 文件夹,重新执行 npm install 命令安装 node_modules 依赖包,检查修改的依赖包中是否存在修改后的代码
适用于 webpack 维护的项目,alias 用于设置路径别名,可以作用于node_modules中的文件,如下:凡通过‘rc-util/es/Dom/isVisible’和‘rc-util/es/Dom/findDOMNode’引入模块的地方,都会被 webpack alias 重定义资源获取地址。在未修改node_modules文件的情况下实现替换文件效果。
pnpm 官方增加了 pnpm patch 和 pnpm patch-commit 两个命令来实现依赖文件。相较 npm 项目不需要额外添加 patch-package、postinstall-postinstall 两个插件
将目标插件缓存并生成一个修改路径以供修改源文件
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。