Обрабатывать требуемый контекст в конфиге веб-пакета - PullRequest
0 голосов
/ 10 июня 2019

Я использую require.context в моем приложении реакции для настройки моих редукторов в моем магазине редуксов, например, так:

// REDUCERS
let reducers = {}
let defaults = {}
const reducersReq = require.context("../reducers", true, /^(.*\.(js$))[^.]*$/im)
reducersReq.keys().forEach(key => {
  const reducerName = camelCase(key.match(/.\/([\w-]+).js/)[1])
  reducers[reducerName] = reducersReq(key).default
  defaults[reducerName] = reducersReq(key)[`${reducerName}ReducerDefaultState`]
})

const store = createStore(
  combineReducers({
    router: connectRouter(history),
    ...reducers
  }),
  ...
)

export default store

Таким образом, вместо того, чтобы импортировать и печатать большой объект для передачи в хранилище создания. Это прекрасно работает, но я пытаюсь немного реорганизовать и перенести эту и некоторые другие функциональные возможности магазина, которые я выделил, в отдельный пакет для приложений, которые я собираю в будущем, для которых я хочу использовать эту функциональность.

Есть ли способ перенести этот тип функциональности во внешний пакет, установленный с NPM, или, возможно, какой-нибудь преобразователь / загрузчик / плагин веб-пакета, который мог бы позволить мне содержать файл моего магазина в чистоте, но при этом иметь эту функцию ? Я занимался поиском, но я не совсем уверен, что я должен искать и как это будет называться.

...