Пакет Npm для включения локальных модулей - PullRequest
1 голос
/ 21 апреля 2019

У меня есть локальные модули , которые я хочу включить в свой пакет для отправки на сервер.Поскольку эти локальные пакеты отсутствуют в реестре npm, они должны быть частью пакета .

Я попытался каким-либо образом получить папку node_modules, включенную в пакет, используя npm pack , но кажется, что это вообще невозможно?

Во-вторых, я попытался перечислить локальные модули в bundledDepencies в файле package.json и использовать npm pack , однако это также не включает локальные модули, несмотря ни на что;

{
    "name": "dev",
    "version": "1.0.0",
    "main": "main.js",
    "dependencies": {
        "local-module": "file:../../local-module"
    },
    "bundledDependencies": [
        "local-module"
    ]
}

Как я могу включить эти локальные модули в пакет dev?

Localмодуль содержит зависимостей сам, не уверен, что это усложнит ситуацию?

Ответы [ 2 ]

1 голос
/ 22 апреля 2019

У меня была похожая проблема некоторое время назад, и хорошее и простое решение - просто поместить ваши локальные модули в частные репозитории git (которые теперь бесплатны на GitHub, благодаря Microsoft ?)

Затем в вашем package.json просто добавьте:

"dependencies" : {
  "name1" : "git://github.com/user/project.git#commit-ish",
  "name2" : "git://github.com/user/project.git#commit-ish"
}

Source, npm docs

Надеюсь, что это поможет ?

0 голосов
/ 25 апреля 2019

Я считаю, что подход Алисии - самый чистый. Однако для кого-то, кто сталкивается с той же проблемой, что и я, когда серверу требуется тарбол, но у него не установлен git, я добавил свои локальные пакеты в отдельную папку в проекте с именем repo и сослался на них в package.json как ;

"dependencies": {
  "my-local-package": "file:./repo/my-local-package"
}
...