this.types.filter не является функцией - PullRequest
0 голосов
/ 28 февраля 2019

Эта функция фильтра работала до тех пор, пока я не сделал некоторые изменения на своем сайте, а теперь выдает эту ошибку.

У меня есть массив объектов, и я хотел бы просмотреть их и вернуть правильное имя.

types = [{"name":1,"type":"Daily"},
        {"name":2,"type":"Bi-Weekly"},
        {"name":3,"type":"Monthly"},
        {"name":4,"type":"Yearly"},
        {"name":5,"type":"Other"}]

Функция

getType(id) {
                return this.types.filter(e => e.name == id)[0].type
            }

1 Ответ

0 голосов
/ 28 февраля 2019

Определите types в компонентах data, props или computed.И определите getType в methods

data: function() {
  return {
    types: [{"name":1,"type":"Daily"},
        {"name":2,"type":"Bi-Weekly"},
        {"name":3,"type":"Monthly"},
        {"name":4,"type":"Yearly"},
        {"name":5,"type":"Other"}]
  }
}
methods: {
    getType(id): {
                return this.types.filter(e => e.name == id)[0].type
    }
}

Если они определены вне компонента, и вам не нужно вызывать их из шаблона Vue, тогда don '* вообще не используйте this. В этом случае они будут на уровне global или module.

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