Есть ли возможность использовать JS пакеты из npm-репозитория?

+1 голос
newbie в категории Как сделать...
Есть ли возможность использовать JS пакеты, установленные из npm репозитория, в узле JavaScript?

Ответ: 1 шт.

0 голосов
vitaliy.tatarskih

Данную задачу можно решить созданием bundle-файла сборщиком модулей.  Созданный сборщиком один js-файл содержит все необходимые зависимости внутри себя и его просто использовать как внешний модуль в узле JavaScript. 

Для создания bundle-файла из пакета node.js, например, можно использовать сборщик browserify.  Далее приводятся примеры создания и использования внешних модулей:

Установка browserify через npm из командной строки:


npm install -g browserify


Пример 1. Сборка bundle модуля fast-xml-parser:

Создадим в файловой системе папку библиотек npm (например "C:\Lib")Далее в командной строке перейдем в созданную папку:

C:\Lib>

и выполним команды:


npm install fast-xml-parser

browserify node_modules/fast-xml-parser -s parser > fast-xml-parser.js


Флаг -s (--standalone) означает создать UMD bundle. Результатом является bundle-файл "fast-xml-parser.js" в папке "C:\Lib\".

Пример 2. Сборка bundle модуля mathjs:


npm install mathjs

browserify node_modules/mathjs -s math > mathjs.js


Далее в коде обработчика JavaScript bundle'ы можно использовать как обычные модули CommonJS:


const math = require("mathjs");

OutputTable.Set("Value", math.eval('det([-1, 2; 3, 1])'));


Дополнительно см. раздел справки Импорт внешних модулей.

...