我应该使用 Browserify 还是 Webpack 来延迟加载 Angular 1.x 中的依赖项 [关闭]

Posted

技术标签:

【中文标题】我应该使用 Browserify 还是 Webpack 来延迟加载 Angular 1.x 中的依赖项 [关闭]【英文标题】:Should I use Browserify or Webpack for lazy loading of dependencies in angular 1.x [closed] 【发布时间】:2014-06-29 14:00:13 【问题描述】:

我想在大型应用程序中异步加载角度依赖项,我正试图为此在Browserify 或Webpack 之间做出决定。我知道 Angular 2.0 会本机支持这一点,但现在我正在寻找一个得到很好支持和流行的解决方案。

任何人都可以就哪些方法在有角度的团队中最有效以及构建项目的最佳方式提供建议。

【问题讨论】:

【参考方案1】:

在我的公司,我们从 browserify 切换到 webpack 的原因有很多,延迟加载就是其中之一。

在 browserify 中将东西放在多个包中需要一些配置更改以及特殊代码。这是一个很好的指南http://esa-matti.suuronen.org/blog/2013/04/15/asynchronous-module-loading-with-browserify/

对于 webpack,添加一个新的 bundle 只是意味着在配置的入口文件行中增加了一个额外的入口文件行。这是一个快速指南:https://github.com/petehunt/webpack-howto#7-multiple-entrypoints。在延迟加载的情况下,您甚至不需要更改配置文件中的任何内容,这很棒 - 只需使用此处详述的异步 require 语法:https://github.com/petehunt/webpack-howto#9-async-loading

这是一个设置模板,与我们在生产中使用的 https://bench.co 非常相似。 https://github.com/jeffling/angular-webpack-example/

【讨论】:

Extend version of the Angular Phonecat tutorial with added steps to include webpack and gulp。非常简单的分步示例。 谢谢杰夫!您是否有机会扩展您的 Angular Webpack 示例以展示如何在运行时加载额外的模块或控制器? @Nikos 没问题 :) 我实际上可能会将其排除在示例之外,因为我觉得人们现在发现它很有用,主要是因为它非常简单。也许我们可以在项目的一个问题中讨论这个问题。你能做一个,我们可以在那里聊天吗?作为记录,由于角度模块系统的工作方式,在运行时延迟加载东西有点复杂。您必须按照 pete Hunt 的示例结合延迟加载 + github.com/ocombe/ocLazyLoad @JeffLing 确定我已经创建了一个仓库来保存这个:github.com/QuantumInformation/angular-webpack-lazy-loading,虽然我不会用咖啡) 我实际上是想让我们创建一个问题,但我喜欢创建一个可能包含一个好例子的新项目的想法。【参考方案2】:

您好,您应该使用 webpack,因为它支持多种文件类型(css、js +++),并且可以在多个模块中分离代码。

【讨论】:

以上是关于我应该使用 Browserify 还是 Webpack 来延迟加载 Angular 1.x 中的依赖项 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

browserify学习总结

在 React 组件和 browserify 包中加载带有插件的 jQuery

前端模块化开发篇之grunt&webpack篇

如何将 jquery-slider 添加到 browserify 中的依赖项列表中?

browserify压缩合并源码反编译

使用带有 jQ​​uery 插件的 Browserify