【问题标题】:Client side module workflow: (Browserify + npm + gulp) or (RequireJS + Bower + gulp)?客户端模块工作流程:(Browserify + npm + gulp)还是(RequireJS + Bower + gulp)?
【发布时间】:2015-08-31 16:31:34
【问题描述】:

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

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

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

【问题讨论】:

  • Webpack 将能够为您自己的代码提供 CommonJS 模块,并且您可以通过 AMD 方式加载外部依赖项。这是一个非常好的经理。
  • 感谢提示!我想我可能会使用它。另外,我遇​​到了 Duo,这似乎是另一个有趣的解决方案。稍后找到满意的答案后,我会更新此问题
  • 仔细查看每个选项的提交次数,因为它会告诉您解决方案的成熟程度:Webpack 有 1,481 次提交,Browserify 有 2,037 次提交,Require.JS 有 1,319 次提交。 Duo 已经 70 岁了。值得深思。

标签: javascript node.js bower browserify commonjs


【解决方案1】:

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

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

感谢您的建议!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-20
    • 2020-06-13
    • 2016-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-02
    相关资源
    最近更新 更多