【问题标题】:Merging NPM dependancy with a VUE.js Javascript Project将 NPM 依赖与 VUE.js Javascript 项目合并
【发布时间】:2022-01-17 19:05:36
【问题描述】:

对于 Vue.js 和 JavaScript 项目中的特殊情况,必须将 NPM 包依赖项与当前 JavaScript 代码库合并。

在这种特定情况下,NPM 包不应再成为 nodes_modules 文件夹的一部分,而应成为 JavaScript 代码本身的一部分。

在这种情况下,两个代码库将来会一起增长。 (独立于原始 NPM 包,而不是作为 Fork)

如何将 NPM 包合并或融合到 Javascript 项目中?

其他细节:

  • 需要合并的库是OIDC client。这是一个由作者“存档”的开源项目(因此不可能为新版本创建拉取请求)。
  • 用于为内部项目创建 SSO。该库已由架构师根据项目的特定需求保留,除此之外别无选择。
  • 该公司没有可用的“内部包管理器”
  • 我不想在我的个人 Github 上托管 fork 并在 NPM 网站上管理包

【问题讨论】:

  • 你能解释一下你的情况吗?你期待什么样的合并?这是一个什么样的项目,一个图书馆?
  • 预期结果是一个 JavaScript 项目。
  • 再次,您能解释一下您的情况吗?目前还不清楚你的情况。这个问题一般来说没有意义,因为您可以将某些包的源代码复制到您的应用程序中,但这不适用于其他包
  • 请务必参阅上面的“其他详细信息”部分,谢谢!
  • 这可能是 XY 问题。公司没有私人回购吗?一个 fork(不一定是 github)可以与项目分开维护,并通过 npm 直接从 repo 安装,而无需在 npm repo 中发布它,这是直接的方法。否则可以将其放入项目目录并安装为本地 npm dep

标签: javascript vue.js npm node-modules


【解决方案1】:

在多次尝试解决这个问题后,事实证明Patch-Package 通过简单地修补而不是分叉来合并依赖项。

语法非常简单,它与 NPM 很好地集成:

  1. 安装:npm i patch-package

  2. 直接在node_modules文件夹中修改你的依赖代码

  3. 运行 npx patch-package some-package 其中 some-package 是要修补的包的名称

https://github.com/ds300/patch-package

文档:https://github.com/ds300/patch-package

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-18
    • 2021-08-16
    • 1970-01-01
    • 2020-07-21
    • 2016-09-15
    • 2019-12-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多