Как изменить каталог пакетов по умолчанию для пряжи?

Когда Yarn используется для установки зависимостей, по умолчанию они помещаются в каталог node-modules.

Как я могу изменить это на i.e Laravel resources папку?
Например, .bowerrc используется для установки bower для установки "directory": "resources/assets"

Ответ 1

yarn install --modules-folder ./resources

UPDATE: Следите за этим GitHub Issue, поскольку эта функция не совсем стабильна.

ОБНОВЛЕНИЕ 2: Из ответа Damien ниже вы можете добавить --install.modules-folder "./resources" в .yarnrc file, так что вам не нужно постоянно передавать аргумент командной строки для каждого последующего вызова. Обратите внимание, что требуются двойные кавычки; без них вы получите Invalid value type 1:25 или подобную ошибку.

Затем вы можете передать элемент управления .yarnrc в источник, чтобы другие разработчики проекта могли использовать те же настройки автоматически.

Ответ 2

Вы можете создать файл .yarnrc со следующим содержимым:

--modules-folder resources

Таким образом, каждая команда yarn будет иметь этот набор параметров.

Ответ 3

Согласно Yarn Docs, вы можете указать каталоги в package.json файле

{
  "directories": {
    "lib": "path/to/lib/",
    "bin": "path/to/bin/",
    "man": "path/to/man/",
    "doc": "path/to/doc/",
    "example": "path/to/example/"
  }
}

При установке пакета вы можете указать точные местоположения для размещения двоичных файлов, справочных страниц, документации, примеров и т.д.