TrackViewModel

AMD: require(["geoscene/widgets/Track/TrackViewModel"], (TrackVM) => { /* code goes here */ });
ESM: import TrackVM from "@geoscene/core/widgets/Track/TrackViewModel";
类: geoscene/widgets/Track/TrackViewModel
继承于:TrackViewModel Accessor
起始版本:GeoScene Maps SDK for JavaScript 4.0

Track 微件提供逻辑,单击时,该微件可将 View 动画到用户的位置,并在位置更新时对其进行跟踪。

Track 微件仅在安全上下文(如 HTTPS)中可用。请注意,localhost 被认为是“潜在安全的”,可用于在支持 Window.isSecureContext 的浏览器中轻松测试。

有关这方面的其他信息,请访问 GeoScene 博客 Google Chrome 中增强的 web API 安全

另请参阅
示例
let trackWidget = new Track({
  viewModel: {    // autocasts as new TrackViewModel()
    view: view,   // attaches the Track to the view
  }
}, "trackDiv");

构造函数

new TrackViewModel(properties)
参数
properties Object
optional

有关可能传递给构造函数的所有属性的列表,请参见属性

属性概述

可以设置、检索或侦听任何属性。请参阅使用属性主题。
显示继承属性 隐藏继承属性
名称 类型 描述
String

类的名称。

更多详情
Accessor
Object

用于设置可选位置参数的对象。

更多详情
TrackViewModel
Boolean

指示是否将视图导航到地理定位结果的位置和比例。

更多详情
TrackViewModel
GoToOverride

此函数提供了覆盖 MapView goTo()SceneView goTo() 方法的能力。

更多详情
TrackViewModel
Graphic

用于在地图上显示用户位置的图形。

更多详情
TrackViewModel
Number

指示在从 track 事件返回位置后,导航到地理定位结果的位置时,在视图上设置的比例。

更多详情
TrackViewModel
String

微件的当前状态。

更多详情
TrackViewModel
Boolean

指示是否正在监视新位置。

更多详情
TrackViewModel
MapView|SceneView

与微件关联的视图。

更多详情
TrackViewModel

属性详细信息

declaredClass Stringreadonly inherited
起始版本:GeoScene Maps SDK for JavaScript 4.7

类的名称。声明的类名称格式化为 geoscene.folder.className

geolocationOptions Object

用于设置可选位置参数的对象。有关使用这些参数的详细信息,请参阅 Geolocation API 规范

默认值:null
示例
const track = new Track({
  view: view,
  // Set optional position paramters
  geolocationOptions: {
    maximumAge: 0,
    timeout: 15000,
    enableHighAccuracy: true
  }
});
goToLocationEnabled Boolean

指示是否将视图导航到地理定位结果的位置和比例。

默认值:true
goToOverride GoToOverride
起始版本:GeoScene Maps SDK for JavaScript 4.8

此函数提供了覆盖 MapView goTo()SceneView goTo() 方法的能力。

另请参阅
示例
// The following snippet uses the Search widget but can be applied to any
// widgets that support the goToOverride property.
search.goToOverride = function(view, goToParams) {
  goToParams.options.duration = updatedDuration;
  return view.goTo(goToParams.target, goToParams.options);
};
graphic Graphic

用于在地图上显示用户位置的图形。

示例
const trackWidget = new Track({
  // Assign the track widget to a view
  view: view,
  // Overwrite the default symbol used for the
  // graphic placed at the location of the user
  graphic: new Graphic ({
   symbol: {
     // autocasts as new SimpleMarkerSymbol()
     type: "simple-marker",
     size: "12px",
     color: "blue",
     // autocasts as new SimpleLineSymbol()
     outline: {
       color: "#efefef",
       width: "1.5px"
     }
   }
 })
});
scale Number
起始版本:GeoScene Maps SDK for JavaScript 4.7

指示在从 track 事件返回位置后,导航到地理定位结果的位置时,在视图上设置的比例。

默认情况下,视图将导航到 2500 (3D) 和 4514 (2D) 的比例。要覆盖 2D 中的默认值,请设置 scale 属性,并将 snapToZoom 设置为 false。对于 2D 视图,该值应在 effectiveMinScaleeffectiveMaxScale 之间。

默认值:null
state Stringreadonly

微件的当前状态。

可能值"disabled"|"ready"|"tracking"|"waiting"

默认值:disabled
tracking Booleanreadonly

指示是否正在监视新位置。

默认值:false

与微件关联的视图。

方法概述

显示继承的方法 隐藏继承的方法
名称 返回值类值 描述

添加一个或多个与对象的生命周期相关联的句柄。

更多详情
Accessor
Boolean

在实例上触发事件。

更多详情
TrackViewModel
Boolean

指示实例上是否存在与提供的事件名称相匹配的事件监听器。

更多详情
TrackViewModel
Boolean

如果存在指定的句柄组,则返回 true。

更多详情
Accessor
Object

在实例上注册事件处理程序。

更多详情
TrackViewModel

移除对象拥有的句柄组。

更多详情
Accessor

执行时,追踪将从用户的位置开始。

更多详情
TrackViewModel

执行时,停止追踪用户的位置。

更多详情
TrackViewModel

方法详细说明

addHandles(handleOrHandles, groupKey)inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。

// Manually manage handles
const handle = reactiveUtils.when(
  () => !view.updating,
  () => {
    wkidSelect.disabled = false;
  },
  { once: true }
);

// Handle gets removed when the object is destroyed.
this.addHandles(handle);
参数
handleOrHandles WatchHandle|WatchHandle[]

对象销毁后,标记为要移除的句柄。

groupKey *
optional

标识句柄应添加到的组的键。组中的所有句柄稍后都可使用 Accessor.removeHandles() 进行删除。如果未提供键,则句柄将被添加到默认组。

emit(type, event){Boolean}
起始版本:GeoScene Maps SDK for JavaScript 4.5

在实例上触发事件。仅当创建此类的子类时,才应使用此方法。

参数
type String

事件的名称。

event Object
optional

事件有效负载。

返回
类型 描述
Boolean 如果监听器收到通知,则为true
hasEventListener(type){Boolean}

指示实例上是否存在与提供的事件名称相匹配的事件监听器。

参数
type String

事件的名称。

返回
类型 描述
Boolean 如果类支持输入事件,则返回 true。
hasHandles(groupKey){Boolean}inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

如果存在指定的句柄组,则返回 true。

参数
groupKey *
optional

组键。

返回
类型 描述
Boolean 如果存在指定的句柄组,则返回 true
示例
// Remove a named group of handles if they exist.
if (obj.hasHandles("watch-view-updates")) {
  obj.removeHandles("watch-view-updates");
}
on(type, listener){Object}

在实例上注册事件处理程序。调用此方法将事件与监听器挂钩。

参数

要侦听的事件或者事件数组。

listener Function

事件触发时要调用的函数。

返回
类型 描述
Object 返回具有 remove() 方法的事件处理程序,可调用该方法来停止侦听事件。
属性 类型 描述
remove Function 调用时,从事件中移除侦听器。
示例
view.on("click", function(event){
  // event is the event handle returned after the event fires.
  console.log(event.mapPoint);
});
removeHandles(groupKey)inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

移除对象拥有的句柄组。

参数
groupKey *
optional

要移除的组键或组键的数组或集合。

示例
obj.removeHandles(); // removes handles from default group

obj.removeHandles("handle-group");
obj.removeHandles("other-handle-group");
start()

执行时,追踪将从用户的位置开始。

stop()

执行时,停止追踪用户的位置。

事件概述

名称 类型 描述
{position: Object}

在调用 start() 方法并找到位置后触发。

更多详情
TrackViewModel
{error: Error}

在调用 start() 方法并返回错误后触发。

更多详情
TrackViewModel

事件详细说明

track

在调用 start() 方法并找到位置后触发。

属性
position Object

Geolocation API 返回的地理位置。

track-error

在调用 start() 方法并返回错误后触发。

属性
error Error

如果追踪时发生错误,则返回 Error 对象。

您的浏览器不再受支持。请升级您的浏览器以获得最佳体验。请参阅浏览器弃用帖子以获取更多信息