未定义不是一个对象(评估‘_expo.default.Constants’)
2019-05-09
5259
我在
Constants
中的
const{manifest}=Expo.Constants
处收到错误,并显示错误“未定义不是对象”。我无法获取它。有人能帮助我消除该错误吗?
我试图在我的计算机上运行的 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')),
};
}
Expected events to be displayed on my emulator from
db.json
file but I am getting error as Undefined.
3个回答
下面的代码对我有用:
而不是
import Expo from 'expo';
和(例如):
const { version } = Expo.Constants.manifest;
这给出了上述错误,
我写道:
import Constants from 'expo-constants';
和:
const { version } = Constants.manifest;
Yossi
2019-06-07
我遇到了同样的错误:
undefine is not an object (evaluating _expoLocation.default.reverseGeocodeAsync)
我通过导入更改解决了该问题。
之前:
import Location from "expo-location";
之后:
import * as Location from "expo-location";
Clément Prévost
2019-08-06
hong developer
2019-05-09