现在项目越来越大,想把一些模块拆出来,异步加载。
之前用requirejs引模块,再拆的时候碰到些坑。
require 打包的时候无法根据if else 来加载模块,由于项目和chrome插件是公用的代码,插件用本地模块代码。这样打包的时候就依然会把本地的模块加进去了。
模块相互之间依赖严重,有些已经产生 闭环? 如何是好
不知道大家在平时项目里是怎么解决的?
你声明了依赖,就肯定会打包在一起。
但对于你这种要拆的情况,是有一些解决方案的。
https://github.com/gfranko/amdclean
把amd组织的代码给翻转成原生的。
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 下面有大量范例
继续求方案,顶