大佬教程收集整理的这篇文章主要介绍了vue2.1升级2.6及element1.x升级2.x心得,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
博客停更很久了,可能已经习惯了日复一日的搬砖生活。工作日的两点一线的疲惫,回家之后的低效率成了这几个月自己状态的一个缩影。最近和几位朋友有过一些交流,有的辞去工作重返象牙塔,有的坚持自己的极客之道。若要论忙,比起996或者是边学习边工作还是相差甚远。人,总喜欢为自己的懒找借口。
十里银滩,自然风光,钟灵毓秀。两天的阳江之旅,缓解了不少工作上的疲态,躺在酒店,想想还是把这篇博客给写完吧。
现在前端技术发展的如此之快,elementUI 1.x早已成为过去式,甚至连2.x也即将随着vue升级到3.x版本而渐渐退场。因此这篇博客主要是对老版本elementUI项目的升级做一个记录,也是为将来elementUI结合vue3.x升级提供一个可能的思路。本篇文章主要是结合自己最近工作中对vue2.1 + element 1.x升级到vue2.6 + element 2.15.x所遇到的问题和心得进行一个总结。
1.项目的技术栈比较老旧,许多业务需要在最新的elementUI的基础上进行开发,靠原生vue手写实现封装花费时间较多且稳定性不是很好; 2. 老项目中存在一些设计不规范的地方,如全局样式泄露、相同组件样式不统一等,此次升级也能很好的对项目中不规范的地方进行一次扫雷; 3. 如今大多数开源的vue应用,如easytable、Vue-TreeSELEct等都依赖于vue2.2或更高的版本,vue2.1版本显然是没有办法兼容这些组件的; 4. vue2.1版本相比2.6版本缺少了一些好用的新特性,升级也是为后续vue3.x升级铺路,保持项目技术栈的活力;
技术框架升级,其实是需要一个比较长时间的预研的。如果你是对个人项目进行升级,不妨进行大胆的尝试;如果是公司项目,还是需要长时间的预研和同事的支持,因为elementUI1.x到2.x的跨越对大型项目来说,真的有比较大的工作量,还需要花大量的时间进行测试以及升级过程中新的需求的代码合并。由于有些内容涉及到公司的代码,因此无法展示出来,只能用文字进行相应的介绍,不便之处,敬请谅解。
我这里使用的是2.6.x版本,elementUI为2.15.x版本(如果你的vue-loader版本较低,可能还需要升级vue-loader)。同时,还要对其他使用的vue组件进行升级,这里主要是介绍elementUI升级,如果有其他开源组件也需要升级,可以自己摸索。
在安装新版本vue和elementUI之后,我们可以尝试运行一下我们的项目,不出意外的话是会有一些控制台报错的,项目无法运行。不同项目的报错和警告可能也不太一样,我在这里总结了一些常见的警告和报错:
当然可能还有别的报错,面对这些报错还是不能着急,一个一个修改就完事儿了,当这些控制台报错都解决了之后,项目就能成功运行了。
虽然项目能跑起来了,但是控制台还会有很多警告:一部分是来自vue本身的警告,还有一些是elementUI的非兼容属性或者即将废弃的属性所带来的警告,需要我们对这些警告进行修改。常见的有:
这部分是升级的重头戏,也是问题最多的地方,稍不注意就有可能有遗漏,导致项目某些功能无法正常使用,因此需要先了解elementUI升级所带来的所有非兼容性更新,这些非兼容性更新可以在elementUI的更新文档中找到:https://element.eleme.cn/#/zh-CN/component/changelog,为了方便大家查找这些非兼容性更新,我按组件对这些非兼容性更新进行了汇总,上传到了github,有需要的可以进行下载:
elementUI非兼容性更新汇总: https://github.com/WayneWang98/element-upgrade 在这里举出一些常见的非兼容性更新以及解决方案供大家参考:
非兼容性更新影响点特别多,我这里采用的方式是按模块进行修改,对文档中的非兼容性更新挨个进行查找与修改,与现有项目的功能保持一致。这也是最花时间的地方。修改时一定要细致谨慎,真的很@R_150_10197@。我们是很多同事一起修改,有问题一起讨论,因为项目真的很大。
进行到了这一步,其实项目中最难的非兼容性更新已经搞定了,项目的功能是没什么问题了,你只需要进行一些样式调整即可与老版本项目保持一致的功能了。 至于如何进行测试,每个项目的方法也不同,但是建议把测试时间尽量拉长一点,这样子才能发现项目中潜在的问题。
以上是大佬教程为你收集整理的vue2.1升级2.6及element1.x升级2.x心得全部内容,希望文章能够帮你解决vue2.1升级2.6及element1.x升级2.x心得所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。