Estoy tratando de acceder a la ubicación del dispositivo usando Geolocalización en ionic2. Seguí la documentación de ionic2 aquí https://ionicframework.com/docs/native/geolocation/ . Se agregaron los paquetes
$ complemento iónico agregar cordova-plugin-geolocalización $ npm install --save @ionic-native/geolocalización
A continuación se muestra mi código.
import { Geolocation } from '@ionic-native/geolocation'; .... constructor(private placesService:PlacesService,private navCtrl:NavController,private geolocation:Geolocation) { } .... onLocateUser(){ this.geolocation.getCurrentPosition() .then((locaton) => { console.log('Location Fetched Successfully'); }).catch((eroor) => { console.log('Error getting Location',eroor); }); }Y mi paquete.json se ve como a continuación
{ "name": "ionic-hello-world", "version": "0.0.0", "author": "Ionic Framework", "homepage": "http://ionicframework.com/", "private": true, "scripts": { "clean": "ionic-app-scripts clean", "build": "ionic-app-scripts build", "ionic:build": "ionic-app-scripts build", "ionic:serve": "ionic-app-scripts serve" }, "dependencies": { "@angular/common": "4.0.0", "@angular/compiler": "4.0.0", "@angular/compiler-cli": "4.0.0", "@angular/core": "4.0.0", "@angular/forms": "4.0.0", "@angular/http": "4.0.0", "@angular/platform-browser": "4.0.0", "@angular/platform-browser-dynamic": "4.0.0", "@ionic-native/core": "3.4.2", "@ionic-native/geolocation": "^3.6.1", "@ionic-native/splash-screen": "3.4.2", "@ionic-native/status-bar": "3.4.2", "@ionic/storage": "^2.0.0", "ionic-angular": "3.0.1", "ionic-native": "^3.5.0", "ionicons": "3.0.0", "rxjs": "5.1.1", "sw-toolbox": "3.4.0", "zone.js": "^0.8.4" }, "devDependencies": { "@ionic/app-scripts": "1.3.0", "typescript": "~2.2.1" }, "cordovaPlugins": [ "cordova-plugin-device", "cordova-plugin-statusbar", "cordova-plugin-console", "ionic-plugin-keyboard", "cordova-plugin-whitelist", "cordova-plugin-splashscreen" ], "cordovaPlatforms": [], "description": "ak-places: An Ionic project" }me sale el siguiente error
Typescript Error Module '"D:/Ionic/ak-places/node_modules/@ionic-native/core/index"' has no exported member 'IonicNativePlugin'. D:/Ionic/ak-places/node_modules/@ionic-native/geolocation/index.d.ts import { IonicNativePlugin } from '@ionic-native/core'; import { Observable } from 'rxjs/Observable';Debe eliminar "ionic-native": "^3.5.0", de su package.json y usar el último "@ionic-native/core": "3.5.0", ejecute npm i .
Aquí está el archivo package.json oficial.
Espero que sepa cómo implementar complementos nativos como proveedor. Si lo desea, puede leer más en el documento oficial aquí .
Finalmente resolvió mi problema https://stackoverflow.com/a/43659149/5350407 . Se cambió la versión del núcleo iónico en package.json y luego se ejecutó npm install