Require Webpack bundle -- returns empty object?

I think you are missing the libraryTarget-setting. Adding libraryTarget: "commonjs2" to the config should fix the issue. See the webpack-docs about it.


In my case I have same problem when using babel-loader with Babel 6. Even when I set

"libraryTarget": "commonjs2"

I have results:

const foo = require('some-module');
console.log(foo) // is {}

const bar = require('some-module').default;
console.log(bar) // is default export of 'some-module'

If you want:

const foo = require('some-module');
console.log(foo) // is default export of 'some-module'

You can use: babel-plugin-add-module-exports

UPDATE:

The authors of webpack do not recommend using the babel-plugin for this.

Webpack 3 has option output.libraryExport (it is don`t have detailed docs now)

I tried like this

output.libraryExport: 'default'

and it resovled the problem.