【发布时间】:2019-08-07 05:22:43
【问题描述】:
我已经尝试将表单值保存到 firebase 有一段时间了,但它没有通过。如果你能帮忙,请帮忙。这就是我到目前为止所做的。
// SignUp.js
import firebase from '@firebase/app';
import '@firebase/auth';
import "@firebase/database";
//import {app,db} from '../config';
import { db } from '../config';
import React, { Component } from 'react';
import {Alert, StyleSheet, Text, TextInput, View, Button } from 'react-native';
let addItem = (Name,Password,Email) => {
db.ref('/items').push({
name: Name,
password:Password,
email:Email
});
};
export default class SignUp extends Component {
state = {
email: '',
password: '',
name:'',
errorMessage: null
};
handleSubmit = () => {
addItem(this.state.name,
this.state.password,
this.state.email
);
alert('Item saved successfully');
};
render() {
return (
<View style={styles.container}>
<Text>Sign Up</Text>
{this.state.errorMessage &&
<Text style={{ color: 'red' }}>
{this.state.errorMessage}
</Text>}
<TextInput
placeholder="Email"
autoCapitalize="none"
style={styles.textInput}
onChangeText={(email) => this.setState({ email })}
value={this.state.email}
/>
<TextInput
placeholder="Name"
autoCapitalize="none"
style={styles.textInput}
onChangeText={(name) => this.setState({ name })}
value={this.state.name}
/>
<TextInput
secureTextEntry
placeholder="Password"
autoCapitalize="none"
style={styles.textInput}
onChangeText={(password) => this.setState({ password })}
value={this.state.password}
/>
<Button title="Sign Up" onPress={this.handleSubmit} />
<Button
title="Already have an account? Login"
onPress={() => this.props.navigation.navigate('Login')}
/>
</View>
)
}
}
我的 db 配置文件正在从另一个配置文件中调用。 我已经确认了配置文件和数据库的链接,它正在工作。我在另一个 addFile.js 上使用过它,它运行良好。所以请大家,如果有人可以帮助我,我将不胜感激。如果有任何关于使用 react-native 和 firebase 的材料的建议,我将不胜感激。如果 firebase 对我来说不是最好的(因为我正在开发一个投资应用程序,我希望获得其他数据库的建议,例如 mongodb 以及如何开始的参考资料。)
【问题讨论】:
标签: firebase react-native firebase-realtime-database firebase-authentication