我需要替换位于“node_modules”中的依赖项文件。直接修改node_modules并不是一个好习惯,因为它会被下一个“npm install”覆盖。 如何在不触及“node_modules”的情况下替换此类文件?例如,我们可以通过打字来完成。但其他文件呢?
就我而言,我想替换“foo.component.less”和“foo.component.metadata.json”文件。仅在主机中创建新文件没有帮助,因为它会覆盖对 css 的访问,但不会覆盖元数据。
最佳但冗长的解决方案:创建包源代码的副本/分支:
readme.md
文件,在未来的升级中不要错过。如果我们不需要完全更新文件和结构,则将覆盖文件放置到项目的根目录就足够了(对于
Angular
)。例如,这样的 css
文件将覆盖 node_modules
: 中的相同文件
npm
先看一下。有一个选项使用
patch-package
npm install patch-package
我们可以直接在node_modules文件夹中进行必要的更改,然后使用以下命令创建补丁:
npx patch-package <package-name>
然后更新
package.json
文件中的脚本部分
"scripts": {
"postinstall": "patch-package",
...
}
每次
npm install
运行时都会执行补丁。