当前位置 : 主页 > 网页制作 > React >

react-native – 当access为true时,React Native无法找到子元素

来源:互联网 收集:自由互联 发布时间:2021-06-15
有了这个JSX: View Text testID='t1'text 1/Text Text testID='t2'text 2/Text/View 我可以通过他们的testID找到子元素(例如使用Appium) 如果我将View更改为TouchableOpacity,则子元素似乎会聚集到iOS上的单个UI
有了这个JSX:

<View>
  <Text testID='t1'>text 1</Text>
  <Text testID='t2'>text 2</Text>
</View>

我可以通过他们的testID找到子元素(例如使用Appium)

如果我将View更改为TouchableOpacity,则子元素似乎会聚集到iOS上的单个UIAElement中,然后无法找到.

看起来TouchableOpacity将其可访问属性硬编码为true并启用收集行为(请参阅https://code.facebook.com/posts/435862739941212/making-react-native-apps-accessible/)

这是预期的行为吗?它使测试变得非常困难.

可触摸的任何元素或组件默认为accessible = {true}.如果您不希望它们组合在一起,请尝试以下方法:

<View accessible={false}>
  <Text testID='t1'>text 1</Text>
  <Text testID='t2'>text 2</Text>
</View>

这应该允许孩子成为他们的一个元素,而不是一个元素(视图元素).

网友评论