React native 拒绝承诺
我基本上是想把React原生GPS功能包装成一个承诺。 当我到达navigator.geolocation.getCurrentPosition的失败回调时,我想手动拒绝一个承诺 以下是相关代码:React native 拒绝承诺,react-native,promise,React Native,Promise,我基本上是想把React原生GPS功能包装成一个承诺。 当我到达navigator.geolocation.getCurrentPosition的失败回调时,我想手动拒绝一个承诺 以下是相关代码: var p = new Promise(); navigator.geolocation.getCurrentPosition( (position) => { ... all good here ... }, (error) => { // try
var p = new Promise();
navigator.geolocation.getCurrentPosition(
(position) => { ... all good here ... },
(error) => {
// trying to reject manually a Promise
p.reject(error);
}
);
问题:
而不是一个函数
错误undefined不是一个计算p.reject的函数
我把承诺和迟延的承诺混淆了 一种可行的方法是将GPS功能包装成如下承诺:
return new Promise(function(resolve, reject) {
navigator.geolocation.getCurrentPosition(
(position) => {
resolve('All good');
},
(error) => {
reject(error);
}
);
});
Promission将简化-可能像
navigator.geolocation.getCurrentPositionAsync=()=>新承诺(navigator.geolocation.getCurrentPosition.bind(navigator.geolocation))一样简单代码>