react+flux下开发,browserify打包生成bundle.js太大?

react+flux下开发,es6方式,browserify打包生成bundle.js 压缩合并太大.有什么好的解决方案,难道给gmail进入需要加进度条.

如果拆分,就的使用常规开发路由+加载器.目前的开发模式是 nodejs下es6开发,最后编译成前端浏览器可以解析的代码.

还有就是生成每个模块[name]_bundle.js,然后浏览器载入路由在加载,这样太背油了. nodejs开发每个模块编译,最后还的浏览器路由,加载进来,是不是太麻烦了.

各位怎么解决的?

阅读 6.6k
2 个回答

有多大呢,假设压缩之后有2M(算大吧),nginx开启5级gzip,返回到浏览器也就400-500k,而且之后就有cache了,会很快的。当然你要是还觉得慢,可以将项目中的某些组件的引用使用按需加载,比如一个component需要用到dataTable,你可以在这个组件的willMount期间判断是否已经有datatable,没有则用getScript加载返回promise,在didMount回调里,对这个promise做处理来初始化所需datatable。诸如此类,方法是丑了点儿,不过还蛮实用的(如果你的项目真的很大的话)。

一开始的index.html里的body放个loading动画(base64图片或css3),也可以提升不少用户体验

按照业务模块进行打包,公共模块打包。 不要打包重复的模块,打包之后的文件也是可以被require的

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