Ionic3项目升级依赖后报错:Cannot read property 'columns' of undefined
解决Ionic3升级依赖后出现"Cannot read property 'columns' of undefined"的问题
刚碰到过类似的坑,给你几个实用的排查和解决方向:
先定位具体出错的依赖包
错误栈指向打包后的vendor.js,很难直接看出问题。你可以开启source map来定位源码:- 打开项目根目录的
ionic.config.json,把sourceMap设为true - 重新运行
ionic serve,打开浏览器开发者工具查看错误栈,就能看到具体是哪个npm包的代码抛出了这个错误
- 打开项目根目录的
排查依赖兼容性问题
Ionic3基于Angular 5.x,很多新发布的npm包已经不再支持这么老的Angular版本。尤其是错误里提到的columns,大概率是某个表格类组件(比如ngx-datatable、angular-datatables这类)的新版本和Ionic3不兼容。
找到出错的包后,去它的npm页面查看版本历史,找到支持Angular 5的最高版本,然后安装指定版本:npm install [包名]@[兼容版本号] --save清理缓存重装依赖
缓存或者锁文件可能导致依赖版本混乱,试试这一套操作:rm -rf node_modules package-lock.json npm cache clean --force npm install锁定webpack版本
Ionic3默认使用Webpack 3.x,如果升级依赖时不小心把webpack升到了4+,很容易出现打包错误。可以在package.json里指定webpack的版本:"devDependencies": { "webpack": "3.12.0" }然后重新执行
npm install
如果以上方法都没解决,把你的package.json里的依赖列表贴出来,这样能更精准地帮你定位问题~
内容的提问来源于stack exchange,提问作者M.Shaarawy
相关产品推荐
相关产品推荐

