react-native – 如何在底部禁用反应本机警告消息

前端之家收集整理的这篇文章主要介绍了react-native – 如何在底部禁用反应本机警告消息前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个反应原生的 IOS应用程序,这个应用程序有时会引发一条警告消息“setState(…)只能更新一个已挂载或正在安装的组件….”,我明白了这个消息是什么,它是由AJAX长时间调用引起的.

考虑到这个警告不会给APP造成任何严重问题,我不想花太多时间来修复它,此警告消息将在从开发服务器加载时出现在模拟器和手机中.我的问题是警告消息是否仍然会以产品模式提示(从预先捆绑的文件中加载)?如果它仍然显示,如何从配置中禁用此警告消息?

谢谢.

仅禁用setState消息

“setState(…)只能更新已安装或安装的组件.”从4个可能的文件中抛出:

  1. node_modules/react/dist/react-with-addons.js
  2. node_modules/react/dist/react.js
  3. node_modules/react/lib/ReactNoopUpdateQueue.js
  4. node_modules/react/lib/ReactUpdateQueue.js

我不知道哪一个触发了您的,但您可以修改这些文件不显示警告.如果您关注的是您的用户,也就是说在发布模式下,则dev标志为false,这意味着不会看到任何警告消息.

禁用所有警告

要禁用警告,只需在AppDelegate.m中更改此设置:

jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle?platform=ios&dev=true"];

jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle?platform=ios&dev=false"];

如果您正在使用预捆绑文件,则必须在捆绑时将dev指定为false:

react-native bundle --dev false --entry-file index.ios.js --bundle-output ios/main.jsbundle --platform ios

猜你在找的React相关文章