angularjs - 避免 Angular 版本冲突的最佳实践

标签 angularjs node.js angular npm npm-install

这张图解释了我的问题----> Version Conflict

我的产品依赖于 Node 包,而 Node 包依赖于特定版本的 Angular,比如版本 #y。

但是,我的产品依赖于不同版本的 Angular - 比如说版本 #x。

我无法确保#x = #y。

避免此类版本冲突的最佳方法是什么?

最佳答案

如果您的依赖是例如Angular X.Y 并且您的 Angular 版本是 X,不会出现兼容性问题,但您可以使用 npm Shrinkwrap 功能,该功能将允许您锁定依赖项的版本。

它将生成 npm-shrinkwrap.json 文件。

{
  "name": "A",
  "version": "1.1.0",
  "dependencies": {
    "B": {
      "version": "1.0.1",
      "from": "B@^1.0.0",
      "resolved": "https://registry.npmjs.org/B/-/B-1.0.1.tgz",
      "dependencies": {
        "C": {
          "version": "1.0.1",
          "from": "org/C#v1.0.1",
          "resolved": "git://github.com/org/C.git#5c380ae319fc4efe9e7f2d9c78b0faa588fd99b4"
        }
      }
    }
  }
}

您可以阅读更多相关信息here .

关于angularjs - 避免 Angular 版本冲突的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41569505/

相关文章:

javascript - 是否可以将函数结果与 angularJS 绑定(bind)?

javascript - 如何在使用 localtunnel 公开本地主机时发布请求

javascript - 用于多线程的 v8 储物柜

javascript - Angular 2 - 如何使我的 index.html 文件标题和元标签的关键字和描述动态

angularjs - $stateProvider 状态下的 Resolve 函数被执行两次

javascript - Angularjs ng-include 指令不起作用

javascript - 如何以 Angular 检索对象详细信息?

mysql - 无法在 Ubuntu 12.04 上安装 Node.js 插件

mysql - angular2-meteor 应用程序的错误 :failed connection to mysql via meteor

javascript - 如何在 Angular 6 中实现选择下拉列表(按搜索过滤),如何按名称属性过滤对象