Как перейти в состояние к свойству doc в firebaseConnect - PullRequest
1 голос
/ 12 июня 2019

Я создаю свое первое приложение реагирования, и мне нужно добавить конкретный документ с идентификатором, аналогичным идентификатору пользователя из моей коллекции Firestore, в состояние моего приложения. Я использую Redux-FireStore. Есть ли способ, которым я могу передать переменную (user_id) из состояния в свойствах firestoreConnect

Я только начал использовать React. Так что я даже не знаю, с чего начать

import React, { Component } from "react";
import { connect } from "react-redux";
import { firestoreConnect } from "react-redux-firebase";
import { compose } from "redux";

class BuyDataContent extends Component {
constructor(props) {
    super(props);
    this.state = {
    price: "300",
    check: false
    };
}

//handlechange
handleChange = e => {
    this.setState({
    [e.target.name]: e.target.value
    });
};
//This method handles a submit of the form
handleSubmit = e => {
    e.preventDefault();
    this.setState({ check: true });
};
render() {
    console.log(this.props);
    return (
    <div className="row">
        <div className="col-lg-10">
        <div className=" card card-white">
            <div className="card-header">
            <div className="panel panel-default text-center">
                <div className="panel-body">

                <form onSubmit={this.handleSubmit}>
                    <div className="form-group">
                    <label for="plan">Select Amount</label>
                    <select
                        name="price"
                        className="form-control form-control-lg"
                        onChange={this.handleChange}
                    >

                        <option value="1500"> 1500</option>
                    </select>
                    </div>

                    <input
                    type="submit"
                    className="btn btn-primary"
                    value="Buy"
                    />
                </form>
                </div>
            </div>
            </div>
        </div>
        </div>
    </div>
    );
}
}

const mapStateToProps = state => {
console.log(state);
return {
    USERID:state.firebase.auth.uid
};
};
const mapDispatchToProps = dispatch => {
return {
    buyData: detail => dispatch(buyData(detail))
};
};
//export
```
export default compose( connect( mapStateToProps, mapDispatchToProps),     firestoreConnect([{ collection: "users", doc: USERID }]) 
)(BuyDataContent);
```

Любая идея о том, как я могу передать ИД пользователя для каждого пользователя в свойство "doc" firestoreConnect и получить конкретный документ из коллекции пользователя. Идентификатор пользователя присутствует в моем состоянии приложения.

...