Как я могу исправить эту функцию, которая возвращает ошибку - данные должны быть объектом, но это было: пользовательская метка времени? - PullRequest
0 голосов
/ 11 июня 2019

Я создаю универсальное приложение nuxt.У меня есть функция ниже, которая работает на стороне клиента, но на серверном обновлении я получаю ошибку, что «Данные должны быть объектом, но это был: объект пользовательского объекта».Поле lastLogin обновляется при входе в систему на стороне клиента.

Приведенный ниже код соответствует моему последнему рефакторингу, где я просто пытаюсь переписать поля в новое значение.Тем не менее, я не могу понять, как исправить код, просто используя поля отметки времени.

async setLastLogin({ commit }, id) {
    let timestamp = timeValue.Timestamp.now();

    console.log(typeof timestamp) // yields object

    let lastLogin = {};
    lastLogin.seconds = timestamp.seconds;
    lastLogin.nanoseconds = timestamp.nanoseconds;

    let userRef = db.collection("users").doc(id);
    try {
      await userRef.update({ ...lastLogin });
    } catch (err) {
      console.log(err);
    }

    commit("setLastLogin", lastLogin);
  }

Я ожидаю обновления полей отметки времени в firestore при использовании ssr.Однако я получаю сообщение об ошибке, что отправляю объект пользовательского объекта.

...