问题标签 [commonjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
13326 浏览

ruby-on-rails - EventMachine 与 Node.js

我将开发一个协作站点,其中一个功能将是具有实时更改的协作编辑。即当两个或更多用户正在编辑同一个文档时,他们可以看到彼此的变化,一旦发生。我有一些使用 Ruby on Rails 的经验,所以我在考虑使用 EventMachine,但是由于围绕 Node.js 的所有这些炒作,我知道我正在考虑使用它。那么,使用 Node.js 而不是 EventMachine 的主要好处是什么?

tl;dr EventMachine 和 Node.js 之间的主要区别是什么(除了语言)?

0 投票
1 回答
929 浏览

javascript - 捆绑和混淆 Common.JS 项目的好方法?

什么是捆绑 Common.JS 项目,然后最小化和混淆捆绑脚本的好方法?(该库旨在用于浏览器。)

我对 Google Closure Compiler 很有经验,但我想我可能更喜欢 Common.JS。

项目中还会有一些 Coffeescript 文件,但我想我可以通过将它们编译为 Javascript 来单独处理它们。

0 投票
4 回答
813 浏览

javascript - 测试 commonjs 模块的替代方法是什么?

有哪些 javascript 测试框架支持测试 commonjs 模块?

0 投票
3 回答
2723 浏览

google-chrome-extension - Chrome 扩展中的 CommonJS

我可以CommonJS在 Chrome 扩展程序中使用模块吗?

谢谢马可

0 投票
1 回答
1564 浏览

javascript - Node.js - 模块是否只初始化一次?

我正在为 node.js 应用程序使用 node-mysql 驱动程序。我不必为每个类似模型的模块一遍又一遍地设置 mysql 连接,而是这样做:

现在,我注意到 DB.js 仅使用 DB 连接初始化一次。因此,随后使用了相同的client对象......我如何构建 DB.js,以便当我从模型中需要它时,每次都会建立一个新的数据库连接?我知道这与使用有关new,但我无法理解它。

0 投票
5 回答
6378 浏览

javascript - 这种自调用匿名函数变体背后的原因

在查看github上的代码时,我发现了以下内容:

这显然是一个自调用匿名函数。但是为什么会这样写呢?我习惯于看到规范变体(function() {})()

.call(this)使用自调用匿名函数有什么特别的优势吗?


编辑:看起来一些 commonjs 环境this在模块的顶层设置为非全局值。哪些,以及它们设置this为您可能想要保留的内容?

0 投票
2 回答
1543 浏览

javascript - 是否有任何 IDE/IDE 插件支持 JavaScript CommonJS 模块?

在这里获得一些代码完成支持真的很酷。也就是说,当我输入

当我键入“”时,我希望获得的不仅仅是通常的Object属性math.

AMD 模块的支持将是理想的,但我会对Modules 1.x感到满意,特别是如果实现支持的 IDE 或插件是开源的。

如果您知道有一个 IDE 可以动态执行 JavaScript 代码到极端程度,例如,它在后台启动 Web 浏览器以捕获所有疯狂的脚本加载,则可以在没有任何特殊支持的情况下完成此操作-via- <script />-DOM-insertion 在 AMD 模块框架中发生的事情。

0 投票
1 回答
1639 浏览

mysql - 如果我可以在 node-mysql 的回调中执行“要求”,模块函数会添加到回调范围还是全局范围?

我正在使用 nodejs 和 node-mysql 驱动程序。我发现自己在做重复的样板,例如

client.query(querystr, queryparams, function callback(err, results, fields){

}

底线大多数时候,一切都是直截了当和重复的,除了成功时发生的事情,这取决于查询和上下文。因此,我想将所有这些封装在一个函数中,并传入一个 querystr、queryparams 和一个成功函数。

问题:我不能这样做,因为这是在回调中,即使我通过回调参数传递它,我也不能让查询引擎使用我的成功函数。

所以我在想我可以在回调中做一个“要求”吗?如果是这样,“要求”模块中的函数是否会被添加到全局范围或回调范围中?我希望后者B

0 投票
2 回答
946 浏览

javascript - CommonJS 中的自定义 `require` 方法(特别是 Node)

require是否可以在一个模块中定义可以在另一个模块中调用的自定义方法?

例如,在 x/x.js

在 y/hello.js

然后在 y/y.js

当 y.js 运行时,应该打印“Hello World”。

我知道这似乎是个坏主意,但我确实有正当理由这样做。;)


这段代码的问题是它试图加载 x/hello.js,而不是 y/hello.js——我希望它与标准要求一样工作。

0 投票
3 回答
854 浏览

javascript - 跨 commonjs/浏览器开发的最佳实践

目前,我defines通过 Google Closure Compiler使用了一些类似IS_CJSand的方法IS_BROWSER,并且只是构建了不同的文件(browser.myproject.js,cjs.myproject.js等)。

这是做事的标准方式吗?如果不是,它是什么,有什么优势?