项目热更新分为两种情况:
1.所有页面都无法更新
2.有的页面可以有的不可以(也就是有时生效,有时不生效)。
解决方案:
1.可以试试删除node_moudels下的.cache文件夹,并且删除pages下的.umi文件。
2.也有可能config.js里路由大小写的问题。
例子:比如class Login extends React.component{
}
你的config.js里也要写成大写(小写不报错,但有可能影响热更新,还有就是页面引入组件大小写不一致也会影响)
routes: [{
name: 'login',
path: '/user/login',
component: './user/Login', //写./user/login(不报错)
}]
3.这种情况可能只适用于我自己(但是前面两种不行,不妨也可以试试)
我试了一下 antd-pro v4版本不会有问题,但是我们的项目无法直接升级(组件太多,比如antd3和4的区别挺大的)。
我的项目配置:
antd-pro (v2)
umi:2.8.7(v2)
系统: win 7 64位
首先看看自己项目所在目录是否为C盘,如果不是移动到C盘试试(我怀疑可能是chokidir对win7不太友好,暂时业务太忙没时间深追后面会研究一下具体原因)。
antd-pro遇到问题可以看看github官方有没有解答antd-pro github issues
umi遇到问题可以看看github官方有没有解答 umi github issues
4.文件目录最好不要有中文,可能会影响热更新(报error watch)。
5.在umi中,文件名需要使用小驼峰的命名规则,否则可能会导致热更新失效的问题
遇到无法热更新 需要 逐一排查