NodeJS требуют пространства имен модуля - PullRequest
0 голосов
/ 01 марта 2019

Я думал о том, чтобы мой, при выпуске npmjs, модуль был разделен на 2 или более частей (версии), но обе легко требовались / импортировались.

Результат должен быть:

//index1.js
const themodule = require('mymodule');

//index2.js
const themodule = require('mymodule/v2');

//index.mjs
import themodule from 'mymodule/v2';

Вид этого стиля.

Я попытался создать подпапку с именем v2 в пути, на который указывает поле свойства package.json: main.Не сработало.

Кажется, я не могу понять, как можно использовать '/' в имени модуля / получить его там.

Полезный совет / толчок вправильное направление было бы здорово.

edit: структура папок:

package.json  main->lib/mod.js
lib/mod.js
lib/v2/mod.js

1 Ответ

0 голосов
/ 01 марта 2019

Таким образом, решение выглядит точно так, как указал @Bergur:

package.json:main     -> lib/index.js
lib/index.js          (version 1)
v2/package.json:main  -> ./index.js  (just needs a handful basic fields)
v2/index.js           (version 2)

, что позволяет выполнять вышеуказанную обработку с помощью require.не уверен насчет импорта.

...