改变Node中的主要环境

有些人可能(也可能不))知道我的框架 。 它的名字是盟友,我绝对喜欢使用它。

最近我在Node.js中做了一些小东西 今天,我决定将它作为我的HTTP服务器,以便我可以做服务器端的JS(以PHP的方式)。

为了做到这一点,我开始了一个叫拖车的项目。 在工作的同时,我发现自己需要Ally的一个function,Object:deploy。 它所做的几乎是这样的:

var a = { a: 'a' }; a.deploy({ b: 'b' }); aa; // 'a' ab; // 'b' 

所以我加载了..

 var Ally = require('./Ally.js'); 

但是,当我尝试使用它,它说这是不明确的。

经过一番挖掘,我发现Object:deploy是在Ally.js文件中定义的,但是它对全局构造函数所做的更改不会保留。

如何在Ally.js文件中对全局variables进行更改应用于需要它的文件中的全局variables?

注意:如果通过源代码可以提供帮助的话,Ally就会和上面的代码链接起来,并且Trailer会被链接到任何人想要使用它的时候。

这个讨论有关吗? 这里的关键点似乎是:

  1. 如果你在shell中工作, require不会扩展全局对象

  2. NODE_MODULE_CONTEXTS = 1时它也不起作用,尽pipe这似乎不是脚本的默认值。

所以如果你想在交互式shell中运行这个,那可能是问题所在。 另见这个SO问题 。