Одновременный экспорт значений по умолчанию и аргументов - PullRequest
0 голосов
/ 06 мая 2020

Вот как я хочу использовать свою библиотеку:

import MyLib, { factory, fn1, fn2 } from "mylib";

console.log(MyLib, MyLib.fn1 === fn1) // { factory, fn1, fn2 } true
const MyLib2 = factory() // this just create another instance of MyLib

Вот как я бы хотел ее экспортировать

function factory() {
  return {
    factory, fn1, fn2
  }
}

const MyLib = factory()
export default MyLib

Но вот как я на самом деле должен сделать это:

function factory() {
  return {
      factory, fn1, fn2
  }
}

const MyLib = factory()
const { fn1, fn2 } = MyLib

export default MyLib
export { factory, fn1, fn2 }

Если я добавлю fn3, мне придется писать его в трех местах. Есть ли способ сделать экспорт менее подробным? Как и все, что возвращает фабрика, я хочу экспортировать.

...