2017-01-12 2 views
0

Я переключился на yarn менеджер пакетов из-за некоторых проблем с производительностью с npm. Все прошло нормально, но проблема с redux-multi не была такой же, как и с npm. Кто-нибудь испытал это раньше? Какое должно быть лучшее решение для этого? Я действительно не хочу обновлять код моего приложения.Почему существует несколько пакетов redux-multi с пряжей?

Пряжа:

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); 
    }; 
    }; 
} 

НПМ:

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

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

Обратите внимание на различие: версия пряжи использует Promise.

+0

Как вы определили зависимость в 'package.json'? –

+0

'" redux-multi ":"^0.1.12 ",' - Я проверил обе версии, и они одинаковы. – haxpanel

+0

Как, точно, вы проверили версию? Кроме того, какая версия отображается в файле 'yarn.lock'? –

ответ

0

Вы упоминаете, что ваш файл package.json использует ^0.1.12 что означает «любую версию, совместимую с 0.1.12.

yarn добавляет еще один уровень надежности поверх npm, которая предназначена для защиты других разработчиков от установки различных совместимых версий в средах.

Я хотел бы проверить файл yarn.lock и убедитесь, что он также имеет версию, что вы ожидаете, чтобы быть установлен (против npm).

Лично я всегда привязываю свои требования в таких ситуациях (просто используя определенную версию, а не один из модификаторов).

+0

Спасибо за указание решения! То, что я нашел странным, это то, что я мог видеть только версию «0.1.12» на сайте npm. Где я должен искать версии «пряжи»? Я попытался найти пакет из 'yarnpkg.com', но в конечном итоге перенаправляется на сайт npm. – haxpanel

+0

@haxpanel - 'пряжа' не имеет собственных версий. Он просто загружается с 'npm'. –

+0

Тогда не должно быть '0.1.91' отображается на сайте npm? – haxpanel

Смежные вопросы