【问题标题】:how do I use npm package or can I just use the code directly我如何使用 npm 包或者我可以直接使用代码
【发布时间】:2022-01-17 00:43:46
【问题描述】:

这是一个非常笼统的问题,我一直在想这个问题。

我正在开发一个 Angular 应用程序,并且我正在使用一些开源 npm 包。一种方法是 npm install 这些包,然后以这种方式使用提供的功能。但我认为(没有尝试过)还有另一种方法是直接从开源项目中提取源代码,然后将代码嵌入到我的应用程序中。它应该工作。好处是我可以轻松修改开源代码以满足我的需求。

这是真的可行吗?

提前感谢您的回答和感谢!

【问题讨论】:

    标签: angular npm


    【解决方案1】:

    我真的建议使用npm install 在您的 Angular 应用程序中使用它。 如果你想更改那个开源库的代码源,我建议如下:

    1. 首先在你的 github 中 fork 库
    2. 执行您的更改
    3. 将分叉库发布为新的 npm 包
    4. npm 安装your new forked library

    注意:请注意开源项目的许可证。您应该了解允许您这样做的法律权利。

    【讨论】:

    • 感谢您的回答,非常感谢!
    【解决方案2】:

    您可能不想采用这种方法有几个原因:

    1. 法律:开源代码通常有关于其重用的规则,说明您必须包含特定的许可或归属;在没有尽职调查的情况下获取代码并确保您正确使用它可能会使您陷入某种合法的热水中。
    2. 安全/稳定性: 开源代码通常会不断迭代以提供安全补丁、错误修复和其他改进。获取大量代码并将它们硬编码到您的网站中,您可以完全摆脱这个过程。
    3. 组织: 将开源代码与 npm 这样的包管理器结合使用,可以让您深入了解您正在使用的所有包、您正在使用的特定版本以及您可能需要的对等依赖项。如果事情开始出错,通过硬编码将自己与此分开意味着更加神秘。

    虽然在某些大小和范围有限的情况下,从库中获取一个小的 sn-p 并根据您的需要对其进行调整可能是可行的,但我不会养成这样做的习惯。替代方案是向相关库提交 PR 以提供您需要的行为,或者分叉库并维护一个单独的版本(这样您就可以拉入上游更改)。

    【讨论】:

    • 感谢您的回答,非常感谢!
    猜你喜欢
    • 2021-06-02
    • 1970-01-01
    • 2011-12-27
    • 1970-01-01
    • 2017-07-31
    • 2020-11-24
    • 2012-02-15
    • 2016-09-15
    • 1970-01-01
    相关资源
    最近更新 更多