【发布时间】:2015-01-18 00:00:21
【问题描述】:
我是 Browserify 的新手,所以如果这听起来像是一个根本愚蠢的想法,我提前道歉。
上下文:我一直在使用具有一个全局命名空间的模块化设计编写我的 Web 应用程序(假设 ns 和模块通过像 ns.moduleA 这样的命名空间访问。我使用 grunt将所有 JS 文件连接在一起,我手动管理依赖项(它们的连接顺序)。在我发现 Browserify 之后,我想将我的代码库迁移到它。
然而,该项目依赖于许多库,其中不少似乎不能很好地与 AMD 或 CJS 一起工作(根据他们的 github 问题列表),并且在研究了诸如 browserify-shim 之类的解决方案之后,似乎很痛苦。
建议的解决方案:我连接所有依赖库并将其粘贴到 libs.js 中,因此这些库都暴露在全局命名空间中,因此它们是普遍可访问的。然后对于我的代码,我不必担心require'ing 他们,只需按原样使用它们。例如,使用 jQuery,我可以简单地使用 $('a').b(),而不是 var $ = require('jquery'); $('a').b();。我确实意识到这与 Browserify 为您管理所有依赖项的理念背道而驰,但自己管理外部库似乎比使用现有解决方案要容易得多。
问题:这是一个好习惯吗? (我怀疑不是),为什么?
谢谢。
【问题讨论】:
标签: javascript browserify