BidiBom
@BidiBom
Wild stuff. Africa

Что это за синтаксис?

Добрый день!
Есть функция: https://jsfiddle.net/3drhqapa/
Возвращает промис.
Делал как в учебнике: https://learn.javascript.ru/promise#promise-resolv...

Дело вот в чем, вот этот кусок кода:
video_get('-648623423','').then(
        response    => {console.log("Success" + response)},
        error       => {console.log("ERROR:" + error)}
    );

Мой PHPStorm подсвечивает и пишет: This inspection reports expression statements which are not assignments or calls. Such statements have no dubious semantics, are normally the result of programmer error.

Что это значит и как это исправить?
  • Вопрос задан
  • 1762 просмотра
Решения вопроса 1
zo0m
@zo0m
full stack developer
Это скорее всего babel, после компиляции на выходе будет:
video_get('-64866375', '').then(function (response) {
        console.log("Success" + response);
}, function (error) {
        console.log("ERROR:" + error);
});

вот ссылка на REPL
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
lazalu68
@lazalu68
Salmon
Это синтаксис ECMAScript 2015. Мне кажется у вас все правильно написано: then() принимает два аргумента, первый из которых это функция которая выполнится в случае если обещание выполнено, а второй - функция, которая выполнится если произошла ошибка. Функции даны стрелочные. Эта конструкция даже работает: говорит мне что произошла ошибка, т.к. $http не существует.

Может быть PHPStorm считает, что это плохо, когда анонимная функция не выполнена моментально и не передана какой-нибудь переменной. Посмотрите тут, мне кажется там такого же рода ошибка.

А вообще, это ведь даже не ошибка, а warning, разве нет? Можно ведь забить на это.
Ответ написан
@YNile
JS Developer
Нужно просто поменять версию Javascript для проекта
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы