我正在调查一种实现npm(带重复数据删除)作为依赖管理器(而不是bower)的方法。现在,我有像jquery-ui这样的npm包使用CommonJS require语句来包含像jquery这样的依赖项。
在使用npm之前,我使用了reqular jquery-ui脚本,没有require。所以现在我想我必须使用Browserify来生成可以在浏览器中使用的JavaScript。
现在我有一个问题(让我们考虑jquery& jquery-ui示例):如果我有其他使用jQuery的软件包(或我自己的代码),这是否意味着我总是必须有一个输出文件来自Browserify?例如:jquery-ui依赖于jquery,我自己的代码也依赖于jquery。如果我有两个单独的输出版本,例如:
browserify jquery-ui.js -o dist/jquery-ui.js
browserify myCode.js -o dist/myCode.js
然后这种方法很糟糕,因为我有两次jquery包括两次。我能正确理解吗?
也许这就是总结一切的问题:我是否需要一个应用程序范围" main.js"文件需要我的应用程序所需的一切吗?
答案 0 :(得分:0)
事实上。您必须getline
预先浏览并使用多个入口点。如果您正在浏览两次,那么您将打包该模块的两个版本。您可能最好建立一个分区捆绑集。在这方面,您可以使用一个browserify命令而不是重复模块。在这里查看手册:https://github.com/substack/browserify-handbook#partitioning