环境:react框架,umi
根本原因:@antd/g6自动下载的ml-matrix包版本为6.11.0,导致#私有方法语法异常。
解决方法:手动在package.json文件中指定ml-matrix版本为6.10.x
调查过程:
本人在老电脑上运行项目未遇到问题,最近更换了windows笔记本,新安装node后,对项目执行
npm install
npm run dev
于是【ml-matrix(自动下载的包)】报如下错误
class private methods are not enabled. please add @babel/plugin-transform-private-methods to your configuration.‘
本人直接搜索如上问题,得到很多答案,但都是关于如何add插件的方法,指出需要在config文件中增加插件。但本人尝试后仍无法解决该问题。
不相信鬼神,事出必有因!
因此,询问Comate该问题并继续追问,终于comate在不经意间提到可能是依赖的版本问题,虽然没有直接指出是这个包的版本问题,但是也给了本人一个提醒!
于是本人,在package-lock.json文件中搜索【ml-matrix】,得到如下结果
使用的是6.11.0版本!
本人迅速到老电脑的项目中搜索,发现旧设备中的该包版本是6.10.4!
抛出一个问题:同样的package.json文件,其中依赖的版本号都相同,甚至node版本保持一致,可是为什么新设备中npm自动下载的依赖包版本和旧设备的不同呢?!
由于本人还需要赶排期,因此未继续深究,而只是在devDependencies中指定了版本
遗留问题,希望各位大佬可以在评论区指点一二,万分感谢!
以上解决方案也希望可以帮助到遇到同样问题的小伙伴们!