承诺中的地理位置

mor*_*oss 3 javascript geolocation async-await es6-promise

我想将 navigator.geolocation.getCurrentPosition() 方法放置在 Promise 中,然后在异步函数中等待它。这是正确的方法吗?

const getGeoLocation = () => new Promise((resolve, reject) => {
  function positionSuccess(position) {
    resolve(position);
  }
  function error() {
    reject();
  }
  navigator.geolocation.getCurrentPosition(positionSuccess, error, { enableHighAccuracy: true });
});

export default getGeoLocation;
Run Code Online (Sandbox Code Playgroud)

CES*_*SCO 8

var getPosition = function (options) {
  return new Promise(function (resolve, reject) {
    navigator.geolocation.getCurrentPosition(resolve, reject, options);
  });
}

getPosition()
  .then((position) => {
    console.log(position);
  })
  .catch((err) => {
    console.error(err.message);
  });
Run Code Online (Sandbox Code Playgroud)