最近,我加入了一家新公司,发现有很多过时的项目依赖项,例如react-navigation@2.x.x, react-native-firebase, react-native等。现在我想把它们都升级。现在另一个问题是,其余的四个开发人员正在使用过时的软件包。
那么最好的方法是什么呢
Thanks in advance
我最近也经历了同样的事情。我是这样处理的:
你必须和那些开发人员谈谈并获得升级的批准。然后你必须选择一个没有开发的日子来升级,因为每次新的提交都会带来冲突,周末是最好的。
将项目备份到多个地方,如果你做了一些糟糕的东西,即使远程git repo也可能无法帮助你。
首先升级react native。最新版本的库依赖于react native的新技术。例如reanimated 2需要rn>0.62.你可以使用React Native Upgrade Helper来查看发生了哪些变化。如果你的项目没有使用太多自定义原生代码,你甚至可以创建一个新的空react原生项目,并复制必要的文件。
在android上测试你的应用&Ios看到升级react native没有破坏任何东西。
然后查看每个依赖项,看看发生了什么变化。如果您能找到迁移指南(类似于:https://reactnavigation.org/docs/5.x/upgrading-from-4.x),那您就很幸运了。一些库,比如react导航,react native reanimated,发生了巨大的变化。这类库将是您的大部分工作,特别是重新激活。每个库之后测试和备份项目。
你应该做完了。针对每个屏幕/每个方法再次测试项目。如果您100%确定项目按预期运行,则可以更改/创建新测试并合并更改。