问题标签 [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.
ruby-on-rails - EventMachine 与 Node.js
我将开发一个协作站点,其中一个功能将是具有实时更改的协作编辑。即当两个或更多用户正在编辑同一个文档时,他们可以看到彼此的变化,一旦发生。我有一些使用 Ruby on Rails 的经验,所以我在考虑使用 EventMachine,但是由于围绕 Node.js 的所有这些炒作,我知道我正在考虑使用它。那么,使用 Node.js 而不是 EventMachine 的主要好处是什么?
tl;dr EventMachine 和 Node.js 之间的主要区别是什么(除了语言)?
javascript - 捆绑和混淆 Common.JS 项目的好方法?
什么是捆绑 Common.JS 项目,然后最小化和混淆捆绑脚本的好方法?(该库旨在用于浏览器。)
我对 Google Closure Compiler 很有经验,但我想我可能更喜欢 Common.JS。
项目中还会有一些 Coffeescript 文件,但我想我可以通过将它们编译为 Javascript 来单独处理它们。
javascript - 测试 commonjs 模块的替代方法是什么?
有哪些 javascript 测试框架支持测试 commonjs 模块?
google-chrome-extension - Chrome 扩展中的 CommonJS
我可以CommonJS
在 Chrome 扩展程序中使用模块吗?
谢谢马可
javascript - Node.js - 模块是否只初始化一次?
我正在为 node.js 应用程序使用 node-mysql 驱动程序。我不必为每个类似模型的模块一遍又一遍地设置 mysql 连接,而是这样做:
现在,我注意到 DB.js 仅使用 DB 连接初始化一次。因此,随后使用了相同的client
对象......我如何构建 DB.js,以便当我从模型中需要它时,每次都会建立一个新的数据库连接?我知道这与使用有关new
,但我无法理解它。
javascript - 这种自调用匿名函数变体背后的原因
在查看github上的代码时,我发现了以下内容:
这显然是一个自调用匿名函数。但是为什么会这样写呢?我习惯于看到规范变体(function() {})()
。
.call(this)
使用自调用匿名函数有什么特别的优势吗?
编辑:看起来一些 commonjs 环境this
在模块的顶层设置为非全局值。哪些,以及它们设置this
为您可能想要保留的内容?
javascript - 是否有任何 IDE/IDE 插件支持 JavaScript CommonJS 模块?
在这里获得一些代码完成支持真的很酷。也就是说,当我输入
当我键入“”时,我希望获得的不仅仅是通常的Object
属性math.
。
对AMD 模块的支持将是理想的,但我会对Modules 1.x感到满意,特别是如果实现支持的 IDE 或插件是开源的。
如果您知道有一个 IDE 可以动态执行 JavaScript 代码到极端程度,例如,它在后台启动 Web 浏览器以捕获所有疯狂的脚本加载,则可以在没有任何特殊支持的情况下完成此操作-via- <script />
-DOM-insertion 在 AMD 模块框架中发生的事情。
mysql - 如果我可以在 node-mysql 的回调中执行“要求”,模块函数会添加到回调范围还是全局范围?
我正在使用 nodejs 和 node-mysql 驱动程序。我发现自己在做重复的样板,例如
client.query(querystr, queryparams, function callback(err, results, fields){
}
底线大多数时候,一切都是直截了当和重复的,除了成功时发生的事情,这取决于查询和上下文。因此,我想将所有这些封装在一个函数中,并传入一个 querystr、queryparams 和一个成功函数。
问题:我不能这样做,因为这是在回调中,即使我通过回调参数传递它,我也不能让查询引擎使用我的成功函数。
所以我在想我可以在回调中做一个“要求”吗?如果是这样,“要求”模块中的函数是否会被添加到全局范围或回调范围中?我希望后者B
javascript - CommonJS 中的自定义 `require` 方法(特别是 Node)
require
是否可以在一个模块中定义可以在另一个模块中调用的自定义方法?
例如,在 x/x.js
在 y/hello.js
然后在 y/y.js
当 y.js 运行时,应该打印“Hello World”。
我知道这似乎是个坏主意,但我确实有正当理由这样做。;)
这段代码的问题是它试图加载 x/hello.js,而不是 y/hello.js——我希望它与标准要求一样工作。
javascript - 跨 commonjs/浏览器开发的最佳实践
目前,我defines
通过 Google Closure Compiler使用了一些类似IS_CJS
and的方法IS_BROWSER
,并且只是构建了不同的文件(browser.myproject.js
,cjs.myproject.js
等)。
这是做事的标准方式吗?如果不是,它是什么,有什么优势?