作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个渲染 React Native 的组件 Pressable
并使用 pressed
状态改变显示:
<Pressable testID="t">
{({ pressed }) => <Text style={pressed ? pressedStyle : unPressedStyle }>{title}</Text>
<Pressable>
这工作正常,但是当我运行测试覆盖率报告时,
pressed
状态被跳过。即使我触发
press
也会发生这种情况可按下的事件,例如:
const { getByTestID } = render(<PressableComponent />);
const pressable = getByTestID('t');
fireEvent.press(pressable);
有什么办法可以触发
pressed
在测试期间声明以便我可以测试该分支?
最佳答案
您可以使用 testOnly_pressed
RN 可压组件的属性。如果设置为 true
它模拟测试中的按下状态。
<Pressable testID="t" testOnly_pressed={isStatusPressedForTest}>
{({ pressed }) => <Text style={pressed ? pressedStyle : unPressedStyle }>{title}</Text>
<Pressable>
const { getByTestID } = render(<PressableComponent isStatusPressedForTest />);
不需要再触发新闻事件了。
pressed
.
关于react-native - 测试 Pressable 的按下状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64452964/
我有一个渲染 React Native 的组件 Pressable并使用 pressed状态改变显示: {({ pressed }) => {title} 这工作正常,但是当我运行测试覆盖率报
随着更新 react native到版本 0.63 ,出现了新的组件。谁能解释一下 Pressable不同于 TouchableOpacity以及何时更好地使用它们。 最佳答案 Pressable 是
我已按照官方快速入门页面创建了我的第一个路由器。 但是最后,当我点击导航链接时,它们什么也不做。 这是我所做的: app.routing.ts: const appRoutes: Routes = [
By continuing, you agree to our{" "} Terms of Service “服
我似乎无法删除此错误消息,也不知道它的确切来源。 Pressable 确实是一个工作组件,但对我大喊大叫的东西不明白这一点。它是什么以及如何解决? 我尝试将 react 和 react-native
我是一名优秀的程序员,十分优秀!