reactjs - React Native 查找并禁用特定类型屏幕上的所有组件
问题描述
我在想这样做的方法是搜索某种类型的所有组件(TouchableOpacity、Button 等)并向它们添加禁用的道具。像 document.getElementsByName() 这样的东西。
使用 RN >0.60 和功能组件。
我不想禁用整个屏幕,因为我仍然希望用户能够滚动列表等。
我希望能够从一个子组件中执行此操作,我将添加到许多不同的屏幕中,因此通过并将引用添加到数百个我可能想要禁用的组件或类似的东西我认为不起作用。
为了减少歧义,如果没有互联网连接,我正在尝试禁用用户对屏幕上发送 api 请求的任何内容的输入。
解决方案
你可以使用状态或钩子来解决这个问题:
分配一个状态来检测互联网连接:
如果有互联网连接 -> 连接 = true;
如果没有连接 -> coonection = false;
在你的 style prop 组件中检测状态:
样式={this.state.connection?{display:none;}:{display:block}}
我希望这能帮到您
推荐阅读
- javascript - 复杂数组的 Javascript 循环与 C 循环
- html - 添加 Html 标签使我的段落翻倍
- angular - Angular pass data to an imported module
- python - After scaling or normalizing values the graph is changed Python Sklearn pandas
- android - Migrate Intentservices to Workmanager
- django - How to use NTML Authentication in Angular 4 - Django REST project
- log4j - Hazelcast 日志模式解释
- angular - 离子从 URL 获取数据
- c++ - how can I bind a class member function with param as rvalue to boost::function?
- android - Is it possible to get SurfaceTexture dimensions?