0.1.0 • Published 4 years ago
quasar-app-extension-geolocation v0.1.0
Quasar App Extension Geolocation
This extension adds basic geolocation support (using navigator.geolocation). The geolocation data is available in in a Vuex like structure.
Demo project
https://github.com/tomers/quasar-geolocation-example
Relevant documentation
Install
quasar ext add geolocation
Quasar CLI will retrieve it from NPM and install the extension.
Prompts
Install optional vue2-google-maps package
Allow automatic installation of vue2-google-maps package, pre-configured with a boot file, so that its components (e.g. GmapMap) are ready to be used.
Uninstall
quasar ext remove geolocation
Info
Detail of Vuex-like actions and getters
Usage Example
<template>
<div v-if="hasPosition">
Speed is {{ speed }}
</div>
</template>
<script>
import { mapGeolocationActions, mapGeolocationGetters } from 'quasar-app-extension-geolocation/src/store'
export default {
computed: {
...mapGeolocationGetters([
'hasPosition',
'speed'
])
},
created () {
this.samplePosition()
},
methods: {
...mapGeolocationActions([
'samplePosition',
])
}
}
</script>
Store actions
queryPermission
: query for geolocation permissionsamplePosition
: query for current geolocation
Store getters
Permission status
isPermissionKnown
: whether permission has been acquired (by actionqueryPermission
)isPermissionGranted
isPermissionPrompt
isPermissionDenied
Position fields
The geolocation is given in an GeolocationPosition struct that is converted to an object. Getters are provided for each of its fields.
hasPosition
: whether a position has been acquired (by actionsamplePosition
)timestamp
: GeolocationPosition.timestamp of the samplecoords
: GeolocationCoordinates (converted to object). Alternatively, there is a getter for each of the coord fields: -latitude
-longitude
-altitude
-accuracy
-altitudeAccuracy
-heading
-speed
Donate
If you appreciate the work that went into this App Extension, please consider donating to Quasar.