Javascript 组织一个包含导出的大帮助文件

Javascript 组织一个包含导出的大帮助文件,javascript,node.js,ecmascript-6,Javascript,Node.js,Ecmascript 6,如果这个问题太开放,我道歉 我有一个很大的“助手”文件,里面充满了有用的函数。它们都是导出函数,所以 exports.getFirstNameLastName = nameString => { ... } 这个文件越来越大,有足够的功能,我觉得它可以分为更小的分类文件(例如parsingHelper.js、webHelper.js等) 我来自一个高度面向对象的软件开发背景。在C#之类的东西中,我会为这些类别(解析、web等)中的每一个创建一个静态类文件,然后简单地执行一次导入(使用pa

如果这个问题太开放,我道歉

我有一个很大的“助手”文件,里面充满了有用的函数。它们都是导出函数,所以

exports.getFirstNameLastName = nameString => { ... }
这个文件越来越大,有足够的功能,我觉得它可以分为更小的分类文件(例如parsingHelper.js、webHelper.js等)

我来自一个高度面向对象的软件开发背景。在C#之类的东西中,我会为这些类别(解析、web等)中的每一个创建一个静态类文件,然后简单地执行一次导入(
使用parserherpers;
),然后执行
parserherpers.GetFirstNameLastName(…)而不是导入我最终使用的每个函数

我的问题是,是否有一种方法可以以类似的方式组织我的所有助手函数?我试图减少单独导出/导入项目的数量,并尝试将这个大文件拆分为较小的文件


如果不需要,我宁愿不使用其他软件包(使用ES6)。

是的!有一种方法可以做到这一点

// 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()

只需将它们移动到不同的文件(模块)中,然后从那里导入。如果我没有使用helpers.js中间人,我只需在导入用户文件后执行
users.getFirstName()
?在这种情况下,您只能导入:
从“/users”导入用户
,然后使用
users.getFirstName()
!您不需要每次都导入完整的帮助程序