如何查找Firebase中是否存在用户?

时间:2016-09-20 11:54:22

标签: reactjs firebase react-native firebase-realtime-database firebase-authentication

我正在使用Firebase Web SDK并知道检查集合中是否存在子集的方法。但是,我找不到一个简洁的例子来检查用户的存在,而不是试图签下他/她。

export class Email extends Component {
  constructor (props) {
    super(props)
    this.state = { email: '' }
  }

  checkEmail () {
    const { email } = this.state
    FirebaseApp.auth()
    .createUserWithEmailAndPassword(email, uuid.v4())
    .then((User) => Actions.Password({ User }))
    .catch((error) => {
      // Handle Errors here.
      console.log('firebase', {error})
      this.setState({error})
      // ...
    })
    // Actions.password()
  }

  render () {
    return (
      <View style={{ ...styles.onboarding, backgroundColor: 'purple' }}>
        <View style={{ borderBottomWidth: 3, borderColor: 'black', padding: 10 }}>
          <TextInput ref='email'
            style={styles.input}
            keyboardType='email-address'
            placeholder='Your email'
            value={this.state.email}
            onChangeText={(email) => this.setState({email: email.toLowerCase()})} />
        </View>
        {!this.state.error ? null
          : <Text>
            {this.state.error.message}
          </Text>
        }
        <TouchableOpacity onPress={() => this.checkEmail()} style={{ ...styles.button, margin: 20, borderColor: 'black' }}>
          <Text style={styles.buttonText}>Next</Text>
        </TouchableOpacity>
      </View>
    )
  }
}

您是否有任何我们可以重复使用的代码?

1 个答案:

答案 0 :(得分:0)

目前,由于它符合我的应用安全政策和设置,因此我创建了一个精确索引的电子邮件集合。

char[] chars = string.toCharArray();
for (int i=0; i<chars.lenght; i++) {
    if(chars[i] >= '0' && chars[i] <= '9')
        return i; //Or whatever code you need.
}