Эта функция должна возвращать значение второго ожидания.В настоящее время он возвращает значение первого ожидания - PullRequest
0 голосов
/ 23 мая 2018

Я создал функцию getAllCams на своей странице ApiServices.js.

async getAllCams() {
    try {
            const getAlarmListRes = await 
                fetch(`someurl`,
                {
                    method: 'GET',
                    headers: new Headers({
                        Authorization: `Basic ${base64.encode('user-id:1234')}`,
                        'Content-Type': 'application/json'
                    })
            });
            if (getAlarmListRes.status === 200) {
                const newData = await getAlarmListRes.json();
                if (newData !== '') {
                    loggingService.debug('here is your array', newData.alarms);
                    return newData;
                }
                return ApiService.FAILURE;
            }
            loggingService.debug('Was not able to get alarm list for you', getAlarmListRes);
            return ApiService.FAILURE;
        } catch (e) {
            loggingService.debug('could not get alarm list', e);
        }
    }

, когда я вызываю эту функцию на странице CameraNotification.js

componentWillMount() {
    loggingService.debug('component did mount');
    const listOfCams = apiService.getAllCams();
    loggingService.debug('here is your promise object', listOfCams);
}

Я продолжаю получать результатпервое ожидание, которое представляет собой простой объект обещания, который я преобразовываю в объект JSON во втором ожидании.Из моего понимания await, listOfCams должен возвращать массив, а не объект обещания.Что является причиной этого?Я пытался написать код с .then (), и происходит то же самое.

...