如何清除基于本机的输入文本?

Are*_*eza 1 react-native native-base react-native-textinput

我试试这个

  <Input placeholder="search...."
         ref={(ref) => { this.SearchInput = ref; }}
         />
  <Button transparent onPress={this.clear}>
      <Ionicons name="ios-close" />
  </Button>
Run Code Online (Sandbox Code Playgroud)

和功能:

  clear = () => {
    this.SearchInput.clear();
  }
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

this.SearchInput.clear() 不是函数

小智 5

这是正在运行的代码,ref改为getRef并使用this.SearchInput._root.clear();代替this.SearchInput.clear();

  clear = () => {
    this.SearchInput._root.clear();
  }
  render() {
    return (
      <Container>
        <Header />
        <Content>
          <Item floatingLabel>
            <Input placeholder="search...."
              getRef={(ref) => this.SearchInput = ref}
            />
          </Item>
          <Button onPress={this.clear}>
            <Ionicons name="ios-close" />
          </Button>
        </Content>
      </Container>
    );
  }
Run Code Online (Sandbox Code Playgroud)