使用本机MapView对象的nativescript mapbox

使用本机MapView对象的nativescript mapbox,nativescript,mapbox,angular2-nativescript,nativescript-plugin,Nativescript,Mapbox,Angular2 Nativescript,Nativescript Plugin,最终编辑 我找到了正确的文档,可以检查MapView实例和mapboxMap以查看可用的函数 但是,我仍然不清楚如何从JavaScript中实际使用SDK,例如使用mapboxMap.addLayer(layer:layer)。如何创建新层 因此,关于如何在angular/nativescript应用程序中使用本机SDK的任何提示都将非常有用 原始问题 我需要在我的NativeScript项目中对我的Mapbox插件进行更多的控制(我需要实现集群、自定义弹出窗口、自定义(可移动)标记等),Nat

最终编辑

我找到了正确的文档,可以检查MapView实例和mapboxMap以查看可用的函数

但是,我仍然不清楚如何从JavaScript中实际使用SDK,例如使用
mapboxMap.addLayer(layer:layer)
。如何创建新层

因此,关于如何在angular/nativescript应用程序中使用本机SDK的任何提示都将非常有用

原始问题

我需要在我的NativeScript项目中对我的Mapbox插件进行更多的控制(我需要实现集群、自定义弹出窗口、自定义(可移动)标记等),NativeScript Mapbox没有为此提供方便的方法

根据文档,
onMapReady
事件旨在返回对
args.ios | | args.android
下本机MapView对象的引用,但是当我通过日志检查此对象时,它似乎只是一个字符串

com.mapbox.mapboxsdk.maps.MapView{14ffde6 VFED..CL. ........ 0,0-1080,1584}
我已经尝试引用我认为应该存在于其上的参数(通过阅读Mapbox SDK文档),但似乎没有定义任何参数

所以我的问题是,如何在代码中访问本机MapView实例,以便充分利用SDK对插件进行更好的控制

一些关于如何执行简单操作的示例,例如创建MapMarker,将非常有用

编辑


基于这些评论,我使用
console.dir()
调查了实例
com.mapbox.mapboxsdk.maps.MapView
,并获得了一长串可用函数。然而,这些并没有与中提供的内容保持一致

我显然不明白什么,但我觉得我很接近。有人能帮我解决我丢失的链接吗

我试图回答的一些问题;为什么我发现的文档与此实例上可用的方法不同。我如何做一些(看起来)简单的事情,比如添加或修改标记或符号层

编辑2

我想我刚刚弄明白了,我正在检查一个MapView实例,它有一个名为mapboxMap的属性,我正在查看mapboxMap的文档,想知道为什么它没有与MapView实例对齐


因此,只需使用
console.dir(nativeMapView.mapboxMap)
,您就会看到它具有操作地图所需的方法

com.mapbox.mapboxsdk.maps.MapView{14ffde6 VFED..CL...0,0-10801584}
这是一个实例,不确定是否作为“字符串”登录,但您可以尝试“const x=args.android//您正在获取的实例;dir(x)并查看哪些日志,您应该看到方法、成员等


至于记录时的类型,它会为您提供类型,但它位于完整类的命名空间上,因此com.mapbox…MapView是您正在记录的实例的类型。可以对NativeScript中的其他布局/视图执行相同的操作。添加一个console.log(某物),其中某物是对布局或视图(按钮、标签)的引用,您将看到相同的内容。因此,在该实例中,您可以访问SDK提供的任何内容。希望有帮助

com.mapbox.mapboxsdk.maps.MapView{14ffde6 VFED..CL...0,0-10801584}
这是一个实例,不确定是否作为“字符串”登录,但您可以尝试`const x=args.android///您正在获取的实例;console.dir(x)并查看哪些日志,您应该会看到方法、成员等@bradmatin我不熟悉语法,您怎么知道它是一个实例?我的控制台记录器没有给出一个类型,我只是假设它看起来有多奇怪。我将尝试你的建议,并用结果更新我的问题。首先,我对插件做出了贡献,并在以前的项目中使用了它:)至于登录时的类型,它会给你类型,但它位于完整类的名称空间中,所以
com.mapbox…MapView
是你正在登录的实例的类型。可以对NativeScript中的其他布局/视图执行相同的操作。添加一个console.log(某物),其中某物是对布局或视图(按钮、标签)的引用,您将看到相同的内容。因此,在该实例中,您可以访问SDK提供的任何内容。希望这能有所帮助。@BradMartin使用console.dir(x)给了我所需要的洞察力。虽然列出的函数没有出现在我这里的文档中。我会继续挖掘。你介意创建一个带有文档链接和一点解释的答案,这样我就可以接受了吗?非常感谢你,布拉德,这是我想要弄明白的提示。当SDK需要其他对象(如层)的实例时,您对如何使用SDK有进一步的了解吗?(有关编辑内容,请参见我的问题)