Организация большого вспомогательного файла, полного экспорта - PullRequest
0 голосов
/ 19 марта 2020

Извините, если этот вопрос слишком открытый.

У меня есть большой вспомогательный файл, заполненный полезными функциями. Все они являются экспортируемыми функциями, поэтому

exports.getFirstNameLastName = nameString => { ... }

Этот файл становится довольно большим и содержит достаточно функций, поэтому я чувствую, что его можно разделить на более мелкие категоризированные файлы (например, parsingHelper. js, webHelper. js, et c).

Я работаю в области объектно-ориентированного программного обеспечения. Что-то вроде C# я бы создал файл класса stati c для каждой из этих категорий (синтаксический анализ, web и т. Д. c), затем просто сделал бы один импорт (using ParserHelpers;), затем сделал бы ParserHelpers.GetFirstNameLastName(...); вместо того, чтобы импортировать каждую функцию, которую я использую.

Мой вопрос: есть ли способ организовать все мои вспомогательные функции аналогичным образом? Я пытаюсь сократить количество индивидуально экспортируемых / импортируемых элементов и пытаюсь разбить этот большой файл на файлы меньшего размера.

Я бы предпочел не использовать дополнительные пакеты, если мне не нужно (с помощью ES6).

1 Ответ

1 голос
/ 19 марта 2020

Да! Есть способ сделать что-то подобное!

// file users.js

exports.users = {
    getFirstName: () => {},
  getLastName: () => {},
  // Add as many as you want
}


// file categories.js
exports.categories = {
    getCategoryById: () => {},
  getCategoryName: () => {}
}



// You can use them separately or you can create another file an union all them:

// file helpers.js

import users from './users'
import categories from './categories'

exports helpers = {
    users,
  categories
}


// This way you can do something like:

import helpers from './helpers.js'

helper.users.getFirstName()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...