Использование зависимостей в скрипте npm - PullRequest
0 голосов
/ 28 августа 2018

Скажем, у меня есть личный пакет npm, @myprivate/repo, в котором содержится package.json:

 "scripts": {
    "example": "db-migrate"
  },
  "bin": {
    "foo": "bin/foo"
  }

Где bin/foo:

#!/bin/bash
npm run example

Теперь я извлекаю это в родительский репозиторий с помощью npm install:

package.json:

{
  "dependencies": {
    "@myprivate/repo": "*"
   },
   "scripts": {
     "example": "unrelated command",
     "useful": "foo"
   }
} 

Затем выполнение npm run useful приводит к вызову сценария bin foo, который затем пытается вызвать unrelated command. Как охватить вызов зависимости? Как я могу заставить скрипт bin упаковывать свою собственную зависимость от npm и полагаться на это? Является ли вложенный scripts во вложенной зависимости package.json лучшим способом, или есть лучшее, более каноническое решение?

1 Ответ

0 голосов
/ 28 августа 2018

Я смог получить желаемое поведение, изменив последнюю строку bin/foo на:

npm explore @myprivate/repo npm run example

Это выглядит немного счастливым (я ссылаюсь на репозиторий, используя npm explore изнутри себя), но он выполняет свою работу. Хотелось бы услышать о лучшем решении

...