Из-за https://github.com/npm/npm/issues/2943 npm никогда не будет поддерживать возможность пакетов псевдонимов и установить несколько версий одного и того же пакета.
Обходные решения, опубликованные в проблеме github, могут работать для модулей pure-JS, но поскольку npm становится стандартом для управления интерфейсом frontend, пакеты теперь включают в себя различные активы, такие как CSS.
Есть ли способ обхода нескольких версий одного и того же пакета?
Лучшей идеей, которую я придумал, является "клонировать" пакет и публиковать его с немного другим именем.
Например, если вам нужно несколько версий jquery
, вы можете просто опубликовать пакеты с именем jquery-alias1
, jquery-alias2
, jquery-alias3
и т.д., а затем установить соответствующие версии в package.json
.
Или вы можете назвать пакеты в соответствии с их номером версии, например jquery-1.11.x
, jquery-2.1.x
и т.д.
Оба эти подхода кажутся неаккуратными. Есть ли лучшие?