-
Notifications
You must be signed in to change notification settings - Fork 341
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
谈谈SPA打包优化 #405
Comments
import antd from 'antd';
const {Table, Select, DatePicker, Calendar, Form, Transfer, Modal,
Input, Tooltip, Upload, Layout, Row, Col, Tabs, Popconfirm, Menu, message, Dropdown } = antd; 试试这样。 |
@sorrycc 试过了,好像不行 |
entry type should be string, but got object |
@LuciferLi 请升级roadhog到最新版 |
@codering vendor.js 里面导入了公共组件,外面怎么引用呢 |
@huyawei vendor里只是声明哪些是公共需要打包在一起,外面原来该怎么用就怎么用 |
@codering 这种是生产时的配置,开发时 npm run start 报错? ’ roadhog is not defined‘ ,“(0 , _dva2.default) is not a function” ,我是直接把roadhog 从0.6.0 升级到了 1.2.2已解决,将 dllPlugin 改成xdllPlugin |
每次build, common的hash都会变 |
@520Yanxiaofei 这个大小再配合gzip,是可以接受的。 |
@codering 好的,感谢你的回复,现在才知道元旦出了2.0版本,看了下文档,改进挺多。因重点项目维护不敢升级,只能部分改动。等下一期再进行roadhog 2升级,打包再试试看。祝你新年快乐,哈哈 |
好像2.0不再支持multipage了层主的优化貌似搞不定了 |
@vipcxj 嗯,2.0变化大,但我看支持commons配置了,效果是一样的。 另外,我感觉 roadhog 要被 https://github.com/umijs/umi 替代,因为 @sorrycc 的重心不在roadhog了。 |
@codering 请问你那边打包出来的公共模块文件的hash会变化吗?即使没有修改文件的前提下! |
最近用开发了个项目,用到工具及库为
roadhog1.x + antd2.x + dva1.x + moment + react15.x
按照dva给的demo目录结构,利用react-router + require.ensure 进行路由页面级拆分,结果打包出来的js会非常大,不算gzip,基本都是300k ~ 1M 左右。
然后我对做了如下修改后就有非常大的变化,除了最大的公共依赖在1M左右, 基本都在几十K左右:
index.html
改成index.ejs
, 并去除手动引入的index.js, 让roadhog自动引入所有entry模块... <div id="root"></div> - <script src="index.js"></script> ...
... - import './index.html' ...
vendor.js
, 把一些公用的模块都引用下(我项目中antd几乎所有组件都在用).roadhogrc.js
问: 你们是怎么打包优化的?
The text was updated successfully, but these errors were encountered: