Запуск модуля CLI узла локально

У меня есть модуль узла, который представляет собой сценарий командной строки. Интерфейс командной строки использует process.cwd () для получения текущего каталога, из которого вызывается сценарий cli (это важно). Это отлично работает, когда я устанавливаю модуль CLI глобально (https://www.npmjs.com/package/reduxboilergen)

npm i -g <module>

Но когда я устанавливаю его локально npm i -S <module> Тогда 1) Сценарий не вызывается 2) Я добавил сценарий в package.json, а затем, если я запускаю npm run "имя_сценария", он вызывается, но всегда берет каталог, в котором находится сценарий npm вызывается как process.cwd (). Итак, если структура папок root - src . Тогда, даже если я запустил его в каталоге src, он получит корневой каталог как cwd (), поскольку package.json находится в корневом каталоге.

Node_module npm-run (https://github.com/timoxley/npm-run) решает эту проблему, но есть ли другой способ, который вы, эксперты, можете придумать, чтобы мне не нужно было добавлять эту зависимость?


person Sourav Chatterjee    schedule 14.03.2018    source источник
comment
Пожалуйста, отредактируйте свой пост. Это немного сбивает с толку, чего вы на самом деле хотите. Напишите несколько команд, которые работают и не работают.   -  person ralphtheninja    schedule 14.03.2018
comment
Извините за непонятность, в основном это своего рода дубликат (который я сейчас нашел) stackoverflow.com/questions/9679932/   -  person Sourav Chatterjee    schedule 15.03.2018
comment
Ответ будет npx ‹your_command› с npm 5.2.0.   -  person Sourav Chatterjee    schedule 15.03.2018


Ответы (1)


Ответ будет npx начиная с npm 5.2.0.

person Sourav Chatterjee    schedule 14.03.2018