FirebaseError: Функция Query.where () требует допустимого третьего аргумента, но он не определен - PullRequest
1 голос
/ 11 марта 2019

this.unsubscribe = this.refAssign.where(‘email’, ‘==’, this.state.user.email ).onSnapshot(this.onCollectionUpdate);

FirebaseError: функция Query.where () требует допустимого третьего аргумента, но это было не определено.

Я получил это сообщение. Что я должен написать для третьего аргумента, так как я хочу, чтобы он возвращал каждого «пользователя», который имеет тот же адрес электронной почты, что и в коллекции «Назначить»?

Ответы [ 2 ]

0 голосов
/ 13 марта 2019

После многочисленных попыток и ошибок я обнаружил, что это невозможно сделать с помощью выражения "where"

`componentDidMount() {
    this.unsubscribe1 = this.ref.onSnapshot(this.onCollectionUpdate1);
    this.unsubscribe2 = this.refAssign.where(‘email’, ‘==’, this.state.user.email ).onSnapshot(this.onCollectionUpdate2);
}`

вместо этого я сравниваю его в рендере, используя condition ? true : false

                        {this.state.user.map(user =>
                          <tr>
                            <td><Link to={`/show/${user.key}`}>{user.email}</Link></td>
                            <td>{user.name}</td>
                            <td>{user.authority}</td>
                            <td>
                            {this.state.assign.map(assign =>
                                <p>{assign.email == user.email ? assign.projNo : null }</p>
                            )}
                            </td>
                          </tr>
                        )}
0 голосов
/ 12 марта 2019

Убедитесь, что this.state.user.email существует, прежде чем вызывать это утверждение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...