@olemop/loader

Load codes for olemop based on the convention over configuration rules.

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
@olemop/loader
Minified + gzip package size for @olemop/loader in KB

Readme

@olemop/loader - loader module for olemop

Load codes for olemop based on the convention over configuration rules.

@olemop/rpc could load modules in batch but not load the sub-directory recursively.

Regulation

  • Module name

Module would use the filename by default. For example: load lib/a.js and the return result would be: { a: require('./lib/a') }

It would use the name if the module with a name property. For example

// a.js
exports.name = 'test'

the return result would be: { test: require('./lib/a') }

  • Module definiation

If the module exported as a function, @olemop/loader would take it as a factory method and generate a new instance of module by calling the function. And it would return the module directly for other situation.

module.exports = (context) => {
  // return some module instance
  return {}
}

Installation

npm install @olemop/loader

Usage

const Loader = require('@olemop/loader')

const res = Loader.load('.')

console.log('res: %j', res)

API

Loader.load(path, context)

Load all modules in the path.

Parameters

  • path loaded path
  • context if the module provides a factory method, the context would be pass as a parameter as the factory method.

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.