Open WaldoJeffers opened 5 years ago
I'm importing this as an ES6 module natively in Node 17 yet I still seem to have to use the "default" named export…
import asyncify from 'callback-to-async-iterator'
asyncify(cb)
TypeError: asyncify is not a function
// have to use asyncify.default
Currently,
callback-to-async-iterator
is written using ES6 modules, and transpiled to CommonJS using babel-plugin-transform-modules-commonjs.The export in the result file in the
dist
folder looks like this:which means in a standard CommonJS environment, you have to write something like this to use it:
This is a bit unexpected, because I think this module is primarily targeted at NodeJS environments, and the docs don't mention it.
I would suggest using regular CommonJS exports in the source code, to make sure the exported
dist/index.js
file looks like this:This will probably not make any differences for people using it in a ES6 module environment, because tools like Babel or Webpack usually interop quite nicely with CommonJS modules.
What are your thoughts on this? I can work on a PR if that sounds good