【发布时间】:2019-09-05 18:30:50
【问题描述】:
我需要从位于“node_modules”中的依赖项中替换一个文件。直接修改 node_modules 不是一个好习惯,因为它会被下一个“npm install”覆盖。 如何在不触摸“node_modules”的情况下替换此类文件?例如,我们可以用打字来做到这一点。但是其他文件呢?
就我而言,我想替换“foo.component.less”和“foo.component.metadata.json”文件。仅在主机中创建新文件并没有帮助,因为它会覆盖对 css 的访问,但不会覆盖元数据。
【问题讨论】:
-
谁在使用
foo.component.less?node_modules中的另一个模块? -
在“node_modules”里面我有 foo.component.css。并且它在源映射生成时会产生一些冲突,因为项目中的所有其他样式都较少。因此,我用 less 替换 css 并在元数据文件中进行适当的修改。如果直接在 node_modules 中更新,效果很好。
-
您必须将包的源代码复制/分叉到您自己的存储库中。在那里进行修改,然后手动将此包添加到您的
package.json文件中。 -
我不得不为一个项目做这样的事情。你应该能够使用 npm 脚本来完成你想要的。我在博客上写了我的解决方案 here。
标签: angular npm node-modules