async-require
v1.2.2
Published
async module loader
Downloads
926
Readme
async-require
async-require
asyncronous module loader
Example
//ironically loading async-require using syncronaous require.
var asyncRequire = require('async-require');
- async-require
- requireAsync(module) ⇒ Promise.<(module|Error)> ⏏
- [~load - A promisified function that accepts a moduleId as an argument and returns a promise resolving in an object with a toString method such as a Buffer or a String.()](#module_async-require--requireAsync..load - A promisified function that accepts a moduleId as an argument and returns a promise resolving in an object with a toString method such as a Buffer or a String.)
- requireAsync(module) ⇒ Promise.<(module|Error)> ⏏
requireAsync(module) ⇒ Promise.<(module|Error)> ⏏
Kind: Exported function
| Param | Type | Description | | --- | --- | --- | | module | string | the path to the module without a .js extension |
Example
//load script myModule.js
asyncRequire('myModule').then(function(module){
//module has been exported
});
requireAsync~load - A promisified function that accepts a moduleId as an argument and returns a promise resolving in an object with a toString method such as a Buffer or a String.()
load is used by async-require to load the script. By default it load a file relative to the calling module similar to how require works when loading module not installed through npm. Since this function is public you can set a new load method.
Kind: inner method of requireAsync
Access: public
Example
load a script with request
var asyncRequire = require('async-require'),
request = require('request'),
Promise = require('promise'),
//load must return a promise
get = Promise.promisify(request.get);
//overwrite the default load
asyncRequire.load = function(url){
//get the script
return get(url).spread(function(res, body){
//returrn only the body of the script
return body;
})
}