Undefined не является объектом (оценивается как _expo.default.Constants) - PullRequest
0 голосов
/ 09 мая 2019

Я получаю ошибку в Constants в const{manifest}=Expo.Constants и показываю мне, что ошибка undefined не является объектом.Я не могу получить это.Может ли кто-нибудь помочь мне в устранении этой ошибки.

Я пытаюсь установить соединение между API, работающим на моем компьютере, и когда я отлаживаю на своем телефоне.он должен подключаться независимо от того, какой IP-адрес.

import moment from 'moment';
import Expo from 'expo';

const{ manifest} = Expo.Constants;
const api = manifest.packagerOpts.dev
? manifest.debuggerHost.split(':').shift().concat(':3000')
: 'productionurl.com'

const url ='http://localhost:3000';

export function getEvents(){
    return fetch(url)
    .then(response => response.json())
    .then(events => events.map( e =>({...e})));
}
export function formatDateTime(dateString){
    const parsed = moment(new Date(dateString));

    if(!parsed.isValid()){
        return dateString;
    }

    return parsed.format('H A on DD MMM YYYY');
}
export function formatDate(dateString){
    const parsed = moment(new Date(dateString));

    if(!parsed.isValid()){
        return dateString;
    }

    return parsed.format('DD MMM YYYY');
}

export function getCountdownParts(eventDate){
    const duration = moment.duration(moment(new Date(eventDate)).diff(new Date()));
    return{
        days:parseInt(duration.as('days')),
    };
}

Ожидаемые события, которые будут отображаться на моем эмуляторе из файла db.json, но я получаю ошибку как неопределенную.

Ответы [ 2 ]

0 голосов
/ 07 июня 2019

У меня работает следующее:

Вместо

import Expo from 'expo';

и (например):

const { version } = Expo.Constants.manifest;

, что дало вышеуказанную ошибку,

Я написал:

import Constants from 'expo-constants';

и:

const { version } = Constants.manifest;
0 голосов
/ 09 мая 2019

вы можете попробовать этот код.

import { Constants as Manifest  } from 'expo';

Прочтите, как использовать его для подробного описания .

...