客户端模块工作流程:(Browserify + npm + gulp)或(RequireJS + Bower + gulp)?

Client side module workflow: (Browserify + npm + gulp) or (RequireJS + Bower + gulp)?

我一直在为我当前的 Node.JS Express 项目研究不同的客户端 Javascript 模块工作流程,但我无法决定是使用 Browserify + npm + gulp 还是RequireJS + Bower + gulp。

我更愿意使用 CommonJS 而不是 AMD,因为我更喜欢语法,所以一方面我很想使用前一个选项...但是,我真的不喜欢共享同一个全局的想法服务器和客户端的模块(如果我想使用不同的版本怎么办),而且,我宁愿保持我的客户端依赖关系平坦而不是 npm 的方式,所以我更喜欢 Bower 来管理我的模块......所以我陷入了这个难题。

有什么办法可以两全其美吗? Browserify-shim 似乎是相关的......对此事有什么意见吗?

最后我选择了 System.JS 和 jspm,我必须说它绝对解决了我面临的所有问题,然后是一些完美的问题。我花了一段时间才最终发现它,但我相信这将成为很长一段时间的事实标准,所以我鼓励任何编写新项目的人都默认使用 jspm。

你得到 AMD 和 Common.JS 和 ES6 支持,你不混合你的节点模块和客户端模块(node_packages 和 jspm_packages),以及平面依赖......什么你还需要更多吗?

感谢您的建议!