Самостоятельно опубликованный пакет NPM ничего не импортирует при добавлении

#node.js #npm #node-modules

#node.js #npm #узлы-модули

Вопрос:

Я опубликовал очень простой пакет NPM со следующим:

 module.exports = { foo: "baz" };
  

При веб-упаковке он выглядит как строка ниже, и на этот файл ссылаются как на main свойство package.json .

 (()=>{var r={579:r=>{r.exports={foo:"baz"}}},o={};!function t(e){if(o[e])return o[e].exports;var p=o[e]={exports:{}};return r[e](p,p.exports,t),p.exports}(579)})();
  

Теперь, в отдельном проекте, когда я устанавливаю пакет и пытаюсь его импортировать, я ничего не получаю:

 const obj = require('mypackage')
console.log(obj)
// => {}
  
 import obj from 'mypackage'
console.log(obj)
// => {}
  

Чего здесь не хватает? Как мне передать этот экспортированный объект в установленный пакет NPM?

Комментарии:

1. Честно говоря, для подобных вещей я просто использую microbundle

2. Это относится к вашей конфигурации Webpack, а не к чему-либо еще, но его нет в списке. То, что пакет сокращен, не помогает (вы не должны уменьшать точку входа), но проблема в том, что он не ссылается на переменные «модуль» или «экспорт». Импортируется пустой объект module.exports, в то время как ваш экспорт присваивается чему-то другому.

Ответ №1:

Вместо того, чтобы возиться с конфигурацией webpack, моим решением действительно было использовать Microbundle, как предложил Дерек в комментариях.

Это сработало немедленно, поэтому «ответ» заключается в том, что с конфигурацией webpack что-то не так, хотя я не знаю, что это было.