Ios 为什么在一个新的react原生项目之后会出现大量的弃用警告?

Ios 为什么在一个新的react原生项目之后会出现大量的弃用警告?,ios,xcode,reactjs,react-native,Ios,Xcode,Reactjs,React Native,复制步骤: 已安装版本: react 15.4.2 react-native 0.40.0 创建新项目 react-native init reactNativeTest 运行项目 1) Start Xcode 2) Open Project reactNativeTest 3) Run App 当我在xcode中运行它时,我得到了大量的弃用警告、语义问题和CoreFoundation错误 见截图 这些是React Native 0.40()中的已知问题,在一个新项目中,其他人(包括我自己

复制步骤:

已安装版本:

react 15.4.2
react-native 0.40.0
创建新项目

react-native init reactNativeTest
运行项目

1) Start Xcode
2) Open Project reactNativeTest
3) Run App
当我在xcode中运行它时,我得到了大量的弃用警告、语义问题和CoreFoundation错误

见截图


这些是React Native 0.40()中的已知问题,在一个新项目中,其他人(包括我自己)也会遇到这些问题

截至17分钟前,有一个解决方案减少了一些问题

一位对此问题发表评论的人说,“这些都是警告,你可以忽略这些警告。你的项目应该可以很好地运行这些警告。”我已经证实了这一点,但希望我们能很快清理这些警告。

为什么

对于许多依赖项来说,操作系统部署目标太低。有些设置为iPhone4! 我用同样的解决方案在React Native中创建了一个

解决方案

  • 将函数
    min\u OSTarget\u post\u install
    复制到播客文件中
  • 在post_install中调用函数
  • 吊舱安装
  • 请参阅数百条Xcode警告消失
  • 代码

    def min_OSTarget_post_install(installer)
      installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
          if Gem::Version.new('8.0') > Gem::Version.new(config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'])
            config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0'
          end
        end
      end
    end
    

    非常感谢,所以我们将等待小版本升级。很高兴知道您建议“应用所有建议的更改”还是完全信任RN并取消选中所有建议的修改更好?如果React Native无法在没有任何警告的情况下构建,则它是热垃圾。警告的存在是有原因的,在本机代码中有太多模糊的重要警告,我们实际上可能需要修复这些警告。滚动450条警告以查找编译错误也很糟糕。@PeterW谢谢你的建议,但我实际上是一名本地开发人员,正在开发集成在React应用程序中的本地框架。除了编译警告、大量的控制台日志记录消息(这些消息也掩盖了有效的问题)、我很难在频繁进行响应更改时偶尔构建,等等,我们的应用程序还需要在较差的网络连接环境中正常工作。考虑到我在恶劣的连接环境下让我们的应用程序工作时遇到的问题,更不用说调试了,我更倾向于建议我们切换到使用本机Swift开发UI。即使在0.52版本中,我在我们的项目中也看到了大量关于XCode 9.1的警告,大约148条警告451条警告。
    post_install do |installer|
      ...
      min_OSTarget_post_install(installer) // ADD THIS  LINE
    end