Ошибка ESLint для путаницы Vue Cli - PullRequest
0 голосов
/ 06 июля 2018

Я использую Vue Cli для проекта, в котором есть .eslintrc.js, который я пытаюсь придерживаться. Он находит ошибку в коде ниже.

getTags (url) {
    axios.get('http://example.test/api' + url).then(response => {
        this.tags = response.data.data
    }).catch(error => {
        this.tags = []
    })
}

Точная ошибка в этом разделе кода (сразу после .catch)

(error => {
    this.tags = []
    this.loadingTags = false
})

Ошибка: [eslint] Expected error to be handled. (handle-callback-err)

Но я в замешательстве, разве .catch(error => не ловит ошибку? Я не вижу проблемы

Ответы [ 2 ]

0 голосов
/ 08 мая 2019

Иногда вы просто не хотите ничего делать с ошибкой. В этих случаях вы можете сделать это:

// eslint-disable-next-line
(error => {
    this.tags = []
    this.loadingTags = false
})

Не то чтобы эти комментарии были в коде, но вы избавитесь от предупреждений / ошибок, которые, как вы знаете, не являются "реальными".

0 голосов
/ 06 июля 2018

Вы должны что-то сделать с параметром error, внутри вашего сообщения об ошибке. Как говорит правило :

В Node.js - общий шаблон для работы с асинхронным поведением. называется шаблоном обратного вызова. Этот шаблон ожидает объект Error или ноль в качестве первого аргумента обратного вызова. Забыть, чтобы справиться эти ошибки могут привести к очень странному поведению в вашем применение.

Таким образом, вы можете войти или обработать его в обработчике, который вы создали:

(error => {
    console.log(error)
    // or
    this.handleError(error)

    this.tags = []
    this.loadingTags = false
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...