【问题标题】:How to modify package that is dependency of other packages - MeteorJS如何修改依赖于其他包的包 - MeteorJS
【发布时间】:2017-02-12 03:54:05
【问题描述】:

所以,我的问题是我正在尝试将几个 console.log() 添加到我的项目中已安装的包的 js 文件中。

我尝试将这些行添加到的包是 aldeed:autoform,因为我在函数中发现了某种错误,我想提供解决方案。

为了修改一个包,我已经做了以下步骤:

  1. myProject/packages/ 文件夹中克隆用于自动生成的github 存储库。
  2. 修改了我想要的行。
  3. 更改了Package.describe({}) 中的名称值(设置为 aldeed-autoform-modified)
  4. 从我的项目中删除了aldeed:autoform (meteor remove aldeed:autoform)
  5. 添加了我修改后的 autoform (meteor add aldeed:autoform-modified)

问题是,由于我还使用具有 aldeed:autoform 作为依赖项的其他软件包,因此该软件包会自动安装,然后当我运行我的项目时,它会报错说模板(与 AutoForm 相关) 被定义了两次,这是有道理的,因为 autoform 包和修改后的包都定义了这个模板,并且都包含在项目中。

我该怎么办?修改其他人依赖的包的正确方法是什么?

【问题讨论】:

  • 为什么要改名?本地版本应覆盖在线可用的版本。
  • 我在这里看到了推荐link
  • @MasterAM 是的!有效。在本地版本中将名称改回aldeed:autoform并覆盖了原来的名称。

标签: meteor package


【解决方案1】:

如果要修改现有包,可以使用它的本地版本。

不需要修改它的名字,如果另一个包依赖它,改变名字会导致依赖包不使用你修改的版本。

只需将包存储库克隆到项目的/packages 目录或METEOR_PACKAGE_DIRS 环境变量表示的目录。

您可以在Meteor Guide 上找到更多详细信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-26
    • 2013-01-26
    • 2016-03-13
    • 2021-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多