定位模块
数据结构
ESLocationInfo
位置信息
参数 | 描述 | 类型 | 非空 |
---|---|---|---|
address | 地址 | string | 否 |
province | 省份 | string | 否 |
city | 城市 | string | 否 |
district | 地区 | string | 否 |
name | 名称 | string | 否 |
longitude | 经度 | number | 否 |
latitude | 纬度 | number | 否 |
接口
getLocation
该方法获取位置信息。
完整方法声明:function getLocation(): Promise<ESLocationInfo | null>
- 参数:
无
- 返回值:
属性 | 描述 | 类型 | 默认值 |
---|---|---|---|
无 | 位置信息 | Promise<ESLocationInfo | null> |
launchLocation
该方法打开定位设置。
完整方法声明:function launchLocation(): void
- 参数:
无
- 返回值:
属性 | 描述 | 类型 | 默认值 |
---|---|---|---|
无 | 无 | void |
addListener
该方法添加定位监听。
完整方法声明:function addListener(listener: ESLocationListener): void
- 参数:
参数 | 描述 | 类型 | 非空 |
---|---|---|---|
listener | 定位监听 | ESLocationListener | 是 |
- 返回值:
属性 | 描述 | 类型 | 默认值 |
---|---|---|---|
无 | 无 | void |
removeListener
该方法删除定位监听。
完整方法声明:function removeListener(listener: ESLocationListener): void
- 参数:
参数 | 描述 | 类型 | 非空 |
---|---|---|---|
listener | 定位监听 | ESLocationListener | 是 |
- 返回值:
属性 | 描述 | 类型 | 默认值 |
---|---|---|---|
无 | 无 | void |
基础用法
- 代码示例:
点击查看源码
vue<template> <div class='es-sdk-root-css'> <s-title-view class='es-sdk-content-title-css' :text='this.$options.name' /> <div class='es-sdk-content-divider-css' /> <div class='es-sdk-content-column-css'> <s-text-view :text="'当前位置:' + currentLocation"></s-text-view> <div class='es-sdk-content-row-css'> <s-text-button text='打开定位设置' @onButtonClicked='onLaunchLocation' /> <s-text-button text='获取定位信息' @onButtonClicked='onGetLocation' /> </div> </div> </div> </template> <script lang='ts'> import {defineComponent} from '@vue/runtime-core'; import {ESLocationInfo, ESLocationListener, useESLocation} from '@extscreen/es3-core'; import {ref} from 'vue'; export default defineComponent({ name: '定位模块', setup() { const location = useESLocation(); const currentLocation = ref(''); function onLaunchLocation() { location.launchLocation(); } function onGetLocation() { location.getLocation().then((location) => { currentLocation.value = JSON.stringify(location); }, error => { currentLocation.value = error + ''; }); } //监听地址变化 const listener: ESLocationListener = { onLocationChange(location: ESLocationInfo | null) { currentLocation.value = JSON.stringify(location); }, }; const onESCreate = (params) => { location.addListener(listener); }; const onESDestroy = () => { location.removeListener(listener); }; return { onESCreate, onESDestroy, onLaunchLocation, onGetLocation, currentLocation, }; }, }); </script> <style> </style>