大量模块依赖的项目如何拆分模块

现在项目越来越大,想把一些模块拆出来,异步加载。
之前用requirejs引模块,再拆的时候碰到些坑。

  1. require 打包的时候无法根据if else 来加载模块,由于项目和chrome插件是公用的代码,插件用本地模块代码。这样打包的时候就依然会把本地的模块加进去了。

  2. 模块相互之间依赖严重,有些已经产生 闭环? 如何是好

不知道大家在平时项目里是怎么解决的?

回复
阅读 5.1k
3 个回答

http://webpack.github.io/

  • 足迹小:在浏览器端代码非常少(minify不gzip 1k左右),且不占用require define等名字,只占一个用于jsonp的webpackJsonp
  • 同时支持 amd,cmd,没md等各种情况
  • 支持bower npm等等各种包管理
  • 强大的插件机制,丰富的自带插件,神CommonsChunkPlugin(自动提取多个入口JS的公共部分生成所谓的common.js)

关于如何分割代码可以参考 http://webpack.github.io/docs/code-splitting.html 下面有大量范例

你声明了依赖,就肯定会打包在一起。
但对于你这种要拆的情况,是有一些解决方案的。
https://github.com/gfranko/amdclean
把amd组织的代码给翻转成原生的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏