0

Как поменять данный метод так, чтобы он при успешном запросе возвращал true или false

const isClient = () => {

    return new Promise((resolve, reject) => {
        stop();
            request('sign')
                .then((data) => {
                    if (data.payload.response) {
                        const level = data.payload.accessLevel;
                        const isClient = level === CLIENT;

                        if (isClient) {
                            startPing();
                     //метод должен возвращать true
                        }
                    }
                     //метод должен возвращать false
                    resolve(isClient);
                })
                .catch(() => {
                  //метод должен возвращать false
                    reject(' error');
                });

    });
}
Grundy
  • 81,538
werty
  • 857
  • new Promise не нужен – Grundy Nov 30 '17 at 08:15
  • убрал. но когда вызываю метод так const isOkSessionId = isClient(); возвращается undefined почему-то – werty Nov 30 '17 at 08:22
  • потому что скорее всего ты убрал return new Promise, а не new Promise и теперь твоя функция ничего не возвращает. Что ты ожидаешь при этом вызове: const isOkSessionId = isClient();, что в isOkSessionId будет true или false? – Grundy Nov 30 '17 at 08:23
  • да. если запрос прошел успешно, и полученный level === CLIENT, то возвращаем true если нет --false – werty Nov 30 '17 at 08:28
  • @werty - https://pastebin.com/kfYQD82U ну как то так – Valera Checha Nov 30 '17 at 09:10

0 Answers0