react-native - 如何将 TextInput 组件“清除”按钮
问题描述
我react-native-testing-library
在一个react-native-elements
Input
组件上使用。组件在编辑时显示清除按钮。
如何点击清除按钮来测试副作用?
这不起作用:
const addressField = component.getByPlaceholder("Address");
addressField.clear();
// TypeError: addressField.clear is not a function
解决方案
您可以使用clear option
.
handleSearchClear = () => {
this.setState({ query: "" })
}
....
<Input
placeholder='BASIC INPUT'
onClear={this.handleSearchClear}
value={this.state.query}
/>
或者你可以使用ref
this.input.clear();
...
<Input
placeholder='BASIC INPUT'
ref={ref => {this.input = ref;}}
value={this.state.query}
/>
推荐阅读
- csh - 使用 foreach 路径的标准工具的 C Shell“找不到命令”
- c++ - 为什么编译器不能从 std::make_shared 推导出模板参数?
- powershell - PowerShell - 自动注释标题
- powershell - Powershell 命令不会读取 XML
- node.js - 如何使用承诺的节点 exec 将文本传送到命令中
- go - 如何使用 go-kit 将请求标头作为响应标头发送
- sql - 无法使用空值连接两个几乎相同的表
- laravel - 为什么第一方客户端无法处理 Laravel Passport 上的“authorization_code”授权类型
- python - 通过用户输入在元组中打印出每次都不同的输出
- java - 如何从Java中的Pair和Object的映射中获取值