2016-12-04 75 views
2

React Native似乎是创建在iOS和Android下运行的应用程序的理想平台。能够在不需要提交新的本地版本进行审查的情况下向我的客户推送新捆绑包真是太好了。React Native Bundle兼容性

有一件让我担心的事情是新的React Native版本。在GitHub上,我每个月看到平均三个新版本。新的本地版本通常包含重要的错误修复,但我的问题是它们是否会破坏与我的JavaScript包(实际的React应用程序)的兼容性?

人们有时需要一段时间来更新本机应用程序。那么这是否意味着我将不得不维护一个捆绑版本的蜘蛛网,以匹配他们的原生应用版本?

像这样的事情会很快变得一团糟:对于原生应用1.0

  • 包1.0(与之反应母语0.37)
  • 包1.1原生应用1.0(与之反应母语0.37)
  • 束1.2本机应用程序1.0(与之反应母语0.37)
  • 束1.0的本机应用1.1(与之反应母语0.37.1)
  • 束1.1的本机应用1.1(与之反应母语0.37.1)
  • 束1.2的本机应用1.1(与之反应母语0.37.1)
  • 束1.1的本机应用1.2(与之反应母语0.38)
  • 束1.2的本机应用1.2(与之反应母语0.38)
+0

这看起来像一个博客条目,而不是一个编码相关的问题。我看着这个错误吗? – zipzit

+0

也许你没有读过第一个阿尔内亚。让我重新说说我的问题:React Native 0.37是否与React Native 0.38应用程序兼容(等等)?如果没有,我怎样才能防止版本管理(如我的问题所示)? – Zyphrax

回答

1

新版本很常见,但它们通常不会打破界面。在软件开发API中,通常只允许在主要版本发行版中进行更改,而不是次要版本。

此外,事情不只是删除。如果发生急剧变化,它通常会被标记为“已弃用”,并且在稍后的几个版本之前不会被彻底删除。这使您有时间在发生一些重大变化时对应用程序进行更改。

简而言之,是的React-native正在迅速获得新的版本,但没有界面不应该经常更改,以至于它会像您的示例一样严重。

声明:我不是React本地开发人员,也不是贡献者,所以我不能说他们的版本策略有多严格。不过,我会链接到来自react-native的几个文档,并作为来源进行响应。

您还可以跟踪其github releases page上的react-native changelog。

React的官方文档链接here引用了它们的版本化语义。你可以看到它链接,更多的贡献指南here。因此,反应原生将遵循类似的政策。

编辑:我发现react-native的contribution document,它似乎实际上比React本身对版本化语义有点不严格。没有关于版本的任何链接或特定的部分,但这个报价

我们将竭尽所能,这些变化和版本适当沟通,使您可以锁定到特定的版本,如果需要的话

因此,我认为可以安全地假设他们将(大部分)遵循与React本身相同的指导原则,尤其是考虑到大多数贡献者都来自Facebook本身。

+0

谢谢你的回答。我希望直接从React-Native团队获得响应,因为在选择使用React-Native或类似平台时,这是我非常关心的问题。不过,我很欣赏你的答案! – Zyphrax