Как мне получить модуль с помощью node из командной строки?

Я использую Mac OSX. Я установил node через Homebrew. Я установил свою библиотеку (MomentJS) через npm install -g moment.

Когда я ввожу node в командной строке, я получаю консоль NodeJS, это выглядит так:

<Р →

Теперь скажем, я хочу использовать библиотеку moment. Если я напечатаю:

var moment = require('moment');

Я получаю следующую ошибку:

Ошибка: не удается найти модуль "момент"

Как я могу настроить и require внешнюю библиотеку с помощью node из командной строки?

Ответ 1

Вы можете выполнить следующее:

npm install moment # module must be installed locally
node --require moment

Введите следующее:

var moment = require('moment');
moment().format();

На странице man:

-r, --require          module to preload at startup

Согласно источнику, кажется, что node --require не будет искать глобальные модули в версии 4.2.x и не вызовет каких-либо ошибок если модуль установлен глобально и не локально.

Ответ 2

После установки модуля с помощью npm install moment создайте приложение script с именем app.js со следующим содержимым:

var moment = require('moment');
var now = moment().format('DD-MMMM-YYYY');
console.log(now);

Затем, чтобы протестировать его, вы запустите node app.js в консоли, где этот файл, который вы создали, и где вы установили модуль node. Мой файл app.js находится на том же уровне папки, что и моя папка node_modules, которая была создана, когда был установлен момент.