这是一篇激励性文章,旨在帮助你做好准备,将你的 NativeScript 应用更新到 3.0 版本!你一定可以做到!
没错。读完这篇文章后,你就会迫不及待地去更新你的应用。我将向你展示我是如何做到的,这样你就不用再坐在角落里唉声叹气,希望别人能打开 CLI 帮你完成更新了。
启动引擎。
好的,以下是如何更新你的应用。首先,如果你的项目是基于 TypeScript 的,请编辑你的 tsconfig.json 文件,以参考 ES6 和 DOM 库,具体说明请参见
此处。
然后,
将 CLI 更新 到最新版本,即 NativeScript CLI。你知道迟早都要更新的,所以现在就动手吧!运行
npm install -g nativescript
,然后运行
tns info
确保一切更新正常。
更新 CLI 后,你需要访问你的应用的 package.json 文件,其中列出了所有依赖项。我决定先将我的 QuickNoms 应用(一个 Angular 应用)从 2.4.x 更新到 3.0 的发布候选版本,因此我对 package.json 做了以下更改。
然后,当 3.0 正式版发布后,我就可以从该 RC 版本迁移到最终版本。请注意,“nativescript-angular”、“tns-core-modules”和“tns-android/ios”包都发生了变化。确保更新你使用的插件的版本。在我的例子中,fonticons、firebase 和 text-to-speech 的版本都需要更改。最终更新后,此文件如下所示
此时,我建议删除 platforms、node_modules 和 hooks 文件夹,并通过运行 tns run ios
和 tns run android
重新安装包。
如果你非常幸运,这可能是你唯一需要做的事情。
嗯,准备些小点心吧,因为你可能还需要做更多工作。如果某些内容不向后兼容,该怎么办?打开
迁移指南 并逐步修复你的应用。
在我的例子中,SegmentedBar 模块需要一些更改才能构建分段。最初,选项卡的内联颜色也没有应用,但此错误已修复。
对于这个应用,这就完成了!我的关键帧动画可以正常工作,最重要的是,我的插件开箱即用。还好我知道自己在做什么。
让我们简单谈谈
插件。3.0 版本发布意味着你的友好社区插件作者需要对一些更偏向 UI 的插件进行
一些更新 才能使其正常工作。幸运的是,我使用的三个插件都没有出现任何问题。但是,你可能正在使用尚未更新的插件。那么,你有一些选择
- 如果你发现问题,请通过插件的 Github 仓库联系插件作者。与这个人沟通,了解升级计划。
- 如果你有能力,请在插件上提交 PR 来自己更新插件!然后告诉我,如果 PR 被接受,我会送你一件 T 恤。
- 在 论坛 或 NativeScript 社区 Slack 的 #update 频道寻求社区帮助。
你完成更新了吗?一切顺利吗?
在评论中分享你的更新故事!顺便说一句,以下是最终的 QuickNoms 应用外观