【问题标题】:Why there is a different redux-multi package installed with yarn?为什么用 yarn 安装了不同的 redux-multi 包?
【发布时间】:2017-01-12 17:48:10
【问题描述】:

由于npm 的一些性能问题,我已切换到yarn 包管理器。 一切都很顺利,但 redux-multi 的问题与 npm 的问题不同。 有谁之前经历过这个吗?什么应该是最好的解决方案?我真的不想更新我的应用程序代码。

纱线:

function multi(_ref) {
  var dispatch = _ref.dispatch;

  return function (next) {
    return function (action) {
      return Array.isArray(action) ? Promise.all(action.filter(Boolean).map(function (p) {
        return dispatch(p);
      })) : next(action);
    };
  };
}

Npm:

function multi(_ref) {
  var dispatch = _ref.dispatch;

  return function (next) {
    return function (action) {
      return Array.isArray(action) ? action.filter(Boolean).map(dispatch) : next(action);
    };
  };
}

注意区别:yarn 版本使用Promise

【问题讨论】:

  • 你是如何定义package.json中的依赖的?
  • "redux-multi": "^0.1.12", - 我检查了两个版本,它们是相同的。
  • 您究竟是如何检查版本的?另外,您的yarn.lock 文件中显示的是什么版本?
  • 好吧,你是对的!由于某种原因,我在检查版本时犯了一个错误。纱锁:0.1.91 - 你能回答这个问题以便我接受吗? :)
  • 只需要锁定到0.1.12 ..

标签: javascript npm redux yarnpkg


【解决方案1】:

您提到您的package.json 文件使用^0.1.12,这意味着“与0.1.12 兼容的任何版本。

yarnnpm 的基础上增加了另一个级别的可靠性,旨在保护其他开发人员免于跨环境安装不同的兼容版本。

我会检查您的 yarn.lock 文件并确保它也具有您期望安装的版本(与 npm 相比)。

就个人而言,我总是在这种情况下确定我的要求(仅使用特定版本而不是修饰符之一)。

【讨论】:

  • 感谢您指出解决方案!我发现奇怪的是我只能在 npm 网站上看到 0.1.12 版本。我应该在哪里寻找yarn 版本?我试图从yarnpkg.com 找到包,但它最终会重定向到 npm 站点。
  • @haxpanel - yarn 没有自己的版本。它只是从npm 下载。
  • 那不应该在npm网站上显示0.1.91
  • @haxpanel - 绝对。不知道发生了什么。我也没有在项目的 GitHub 页面上看到任何标签或版本。
  • 无论如何,再次感谢您 - 现在我知道在哪里确认版本.. :)
猜你喜欢
  • 2017-02-22
  • 1970-01-01
  • 2017-04-08
  • 2022-08-18
  • 1970-01-01
  • 2022-01-26
  • 2022-06-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多