节点JS需要没有var

Dav*_*osh 7 javascript node.js requirejs

{这与Twitter无关}

一个有趣的问题,有趣的是,它可能是愚蠢的,你可以笑,但我至少会得到这个该死的痒的答案.

目前我用

var Bootstrap = require('library/Bootstrap');
Bootstrap.run();
Run Code Online (Sandbox Code Playgroud)

如果我能在Bootstrap index.js中做这样的事情,真正伟大的事情

module.exports.Bootstrap = My_Bootstrap;
Run Code Online (Sandbox Code Playgroud)

并且像这样毫无疑问地叫它

require('library/Bootstrap');
Bootstrap.run();
Run Code Online (Sandbox Code Playgroud)

无需向我的空间声明另一个变量,有没有办法做到这一点,还是我盯着屏幕想知道,做梦,迷路,回来浪费时间?

编辑 所以这就是我最后所做的:

我创建了一个单一的全局对象,并且只添加了重要的模块,因此可以访问和实例化它们.这结果是一个惊人的答案和解决方案,非常方便

Far*_*hat 6

那么你可以修改global对象.这类似于浏览器上的窗口对象.所以你可以为你的模块编写一个包装器,如下所示:

global.Bootstrap = My_Bootstrap
Run Code Online (Sandbox Code Playgroud)

全局对象在模块之间共享.然后你可以Bootstrap随时随地使用.

  • 请**不要**这样做.通过加载模块,人们会讨厌你把全球空间弄得乱七八糟. (5认同)
  • 请记住,模块有用的原因之一是因为污染全局命名空间可能很难看. (3认同)