暴露模块移除外部别名
问题描述:
我index.js文件,该文件是在index.js我有下面的代码暴露模块移除外部别名
index.js“主入口”我的NPM模块
var server = module.exports = {};
server.load = require("./controller/loader");
loader.js
function add(args) {
loadFolder(args.path);
}
module.exports = {
add:add
}
从而消耗我的模块(如上的package.json节点依赖)模块做以下
var aMoudle = require("myModule");
aMoudule.load.add({path:__dirname + '/module'});
这是工作正常但我的问题,如果有一个莫名其妙地清除负荷其使用在aMoudule.load.add
? 并做而不是aModule.add
(当然保持loader
内add
并且不要把它放在我的index.js它可以是一个解决方案里面,但我想避免它... :-))的
答
当使用:
server.load = require("./controller/loader");
所有装载机的出口成员将被存储的Server.Load可变 ,因此,如果你要调用添加你需要使用:
require('myModule').load.add()
,而不是导出的广告d方法本身从装载机如下:
server.add = require("./controller/loader").add
所以只有add方法本身,你可以访问下面直接添加方法:
require('myModule').add()
您可以编辑您提出的答案是什么这一扩大是否以及如何解决OP问题? –