Лучшая практика использования Firebase Reference - PullRequest
3 голосов
/ 10 февраля 2020

Следующая функция вызывается для создания сообщения

const createPost = (newPost) => {
 app.database().ref('posts').push(newPost);
}

Это еще одна версия функции

const postRef = app.database().ref('posts');
const createPost = (newPost) => {
 postRef.push(newPost);
}

, которая предпочтительна и почему

Ответы [ 2 ]

1 голос
/ 10 февраля 2020

Оба добавят данные в базу данных, но второе лучше:

const postRef = app.database().ref('posts');
const createPost = (newPost) => {
 postRef.push(newPost);
}

Поскольку postRef относится к узлу root в базе данных, который вы могли бы использовать позже в js файл.

0 голосов
/ 11 февраля 2020

pu sh возвращает обещание, которое разрешается после завершения записи в базу данных. Если вы не дождетесь его разрешения, вы не узнаете, не получилось ли это, поскольку ваша функция вернется успешно. Вместо этого вы получите необработанный отказ. Кроме того, все, что запускается после возврата функций, получит меньше ресурсов процессора и памяти в базе данных. Поэтому перепишите его так:

const createPost = async (newPost) => {
    await app.database().ref('posts').push(newPost);
}

Что касается исходного вопроса, вам не следует объявлять переменную, если она используется только один раз, поэтому я бы выбрал первый вариант.

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