Время разбора просто в методе Vue толкает к Firebase DB


Время разбора просто в методе Vue толкает к Firebase DB

05.10.2020 11:53:55 Просмотров 36 Источник

Я создаю доску объявлений с помощью TipTap в Vue.js проект с БД Firebase. Я бы предпочел не использовать moment.js или еще одна библиотека, поскольку она кажется лишней.

Это код для моего простого метода разбора, который я считаю правильным. Довольно ванильный JS, если вы спросите меня.

methods: {
    pushContent() {

      var timestamp = function() {
        let d = new Date(),
            year = d.getYear(),
            day = d.getDay(),
            month = d.getMonth(),

        today = month + "/" + day + "/" + year;

        return today;
      }


      db.ref('thanktank').push({
        authorID: this.currentUserId,
        text: this.editor.getHTML(),
        timestamp: timestamp
      })
      this.editor.clearContent();
    },
  },

Сначала я получаю предупреждение Vue, говорящее это -

[Vue warn]: Error in v-on handler: "Error: Reference.push failed: first argument contains a function in property 'thanktank.timestamp' with contents = function timestamp() {
        var d = new Date(),
            year = d.getYear(),
            day = d.getDay(),
            month = d.getMonth(),
            today = month + "/" + day + "/" + year;
        return today;
      }"

А потом ошибка говорит Вот что -

Reference.push failed: first argument contains a function in property 'thanktank.timestamp' with contents = function timestamp() {
        var d = new Date(),
            year = d.getYear(),
            day = d.getDay(),
            month = d.getMonth(),
            today = month + "/" + day + "/" + year;
        return today;
      }

У вопроса есть решение - Посмотреть?

Ответы - Время разбора просто в методе Vue толкает к Firebase DB / Parse time simply within Vue method pushing to Firebase DB

Является ответом!
Hasip Timurtas

06.10.2020 12:20:47

вы пытаетесь сохранить функцию в базе данных вместо того, чтобы вызывать ее. Делай вот так:

db.ref('thanktank').push({
    authorID: this.currentUserId,
    text: this.editor.getHTML(),
    timestamp: timestamp()
  })

вместо того чтобы передавать саму функцию timestamp, вызовите ее :)

Помочь в развитии проекта:
Закрыть X