出于学习目的,我正在开发一个基于jQuery的小型聊天应用程序。我想把它变成一个CommonJS模块,我可以在其他项目中重用它,只做以下的事情:
var Chat = require('chat'),
mainChat = new Chat({/* ...params... */})
我也使用browserify捆绑所有依赖项。在我的" chat.js"我正在做的文件:
var $ = require('jquery');
它给了我一个本地的jquery对象,我不必担心jQuery是否早先包含在项目中的某个地方。但是,如果在我的项目的某个地方,在另一个" *。js"文件我将做同样的事情 - 它将创建另一个本地jQuery对象,我的包将变得非常庞大。我的问题:是否有一些方法或工具可以防止在同一个应用程序中包含一些npm-module?
答案 0 :(得分:1)
如果两个版本的jQuery完全相同,那么browserify将在dedupe
步骤中检测到它并仅包含一次。
有关详细信息,请参阅https://github.com/substack/browserify-handbook#dedupe。