@loxjs/load-js-modules
v1.0.3
Published
Provides a convenient way to dynamically load JavaScript modules from a specified directory.
Downloads
14
Readme
@loxjs/load-js-modules
The @loxjs/load-js-modules module provides a convenient way to dynamically load JavaScript modules from a specified directory. It supports loading individual files as well as entire directories with an optional auto-load feature.
Installation
npm install @loxjs/load-js-modulesOr with yarn:
yarn add @loxjs/load-js-modulesUsage
To use this module, you first need to import it and then call the loadJSModules function with the appropriate options.
Basic Example
const loadJSModules = require('@loxjs/load-js-modules');
// Load modules from a specific directory
const modules = loadJSModules({ dir: './path/to/modules', autoLoad: true });
// Use the loaded modules
modules.forEach((mod) => {
console.log(`Module ${mod.moduleName} loaded`, mod.module);
});Advanced Usage
You can also load modules without automatically requiring them, which allows you to require them at a later point in your application.
const loadJSModules = require('@loxjs/load-js-modules');
// Load module information without auto-loading
const modules = loadJSModules({ dir: './path/to/modules', autoLoad: false });
// Require a specific module when needed
const specificModule = modules.find(mod => mod.moduleName === 'specificModule');
const loadedModule = specificModule.loadModule();
// Use the loaded module
console.log(`Module ${specificModule.moduleName} loaded`, loadedModule);API
loadJSModules(options)
Loads JavaScript modules from the specified directory.
Options
dir(String): The directory to load modules from. This can be a relative or absolute path.autoLoad(Boolean): If true, modules are automatically required when loaded. Defaults to false.
Returns
An array of module objects with the following properties:
autoLoad(Boolean): The autoLoad option passed to loadJSModules.fileExtname(String): The file extension of the module.fileName(String): The name of the file.filePath(String): The full path to the module file.moduleName(String): The name of the module, derived from the file name.loadModule(Function): A function that, when called, will require the module.module(Object|null): The required module if autoLoad is true, otherwise null.
Contributing
Contributions to @loxjs/load-js-modules are welcome! Please ensure that your contributions adhere to the following guidelines:
- Write clear, readable, and maintainable code.
- Follow existing coding styles and practices.
- Write meaningful commit messages.
- Update the documentation accordingly.
For more detailed information, please read the contributing guide.
Enjoy using @loxjs/load-js-modules!
