【问题标题】:Meteor, how to fix to a npm packageMeteor,如何修复到 npm 包
【发布时间】:2013-05-24 22:24:25
【问题描述】:

所以,我在流星应用程序中使用了一个 npm 包。它被导入到 .npm 目录中,我想在包中添加一个修复程序。

我可以将修复程序发送给包的作者,但这需要一段时间才能推送。 我可以将整个固定代码复制粘贴到我的项目中,但这看起来有点脏。

那么有没有办法/最佳实践来做到这一点?

【问题讨论】:

    标签: javascript node.js meteor npm


    【解决方案1】:

    您可以分叉存储库并应用更新,然后在 smart.json 文件中使用存储库的 git,例如下面的“流星路由器”

    {
         packages : {
             "router" : {
                 git : "https://github.com/hypno2000/meteor-router.git"
             }
    }
    

    原始存储库位于https://github.com/tmeasday/meteor-router.git,因此陨石将使用 fork 代替,但保持其他所有内容(例如依赖项)不变,但在您告诉它的地方使用您的 fork。

    然后使用mrt update 获取分叉

    如果作者接受推送请求,只需删除git: 行并再次执行mrt update 以恢复使用原包

    【讨论】:

    • 看起来很棒的方法。实际上这不完全是我的情况,但也许我们可以做类似的事情。我正在开发一个依赖于我想要修复的 npm 包的包:在 package.js 我有这一行 Npm.depends({npm_package_name_I_want_to_fix: "1.24.1" });
    • 啊!有一个隐藏的 .npm 目录,您可以通过 npm install packagename@githubrepository(我认为)或 npm install git://github.com/v....git 手动安装包
    • 说到这个.npm目录,如果我在这个目录中对文件进行修改,是否可以在没有通知的情况下被流星/陨石覆盖?
    • 它不应该进行更新,直到您清除目录。 Meteor 认为 npm 包已安装并且不会更新它。不过,你需要对陨石小心一点,因为它可以在你进行 mrt 更新时清除 .npm 目录(我认为)。如果你愿意,你也可以编辑那里的文件,直到作者接受你的推送。
    • 非常感谢,非常有价值的信息。
    猜你喜欢
    • 2017-01-01
    • 2013-03-13
    • 1970-01-01
    • 2018-05-26
    • 2018-12-28
    • 2017-04-13
    • 1970-01-01
    • 1970-01-01
    • 2018-10-09
    相关资源
    最近更新 更多