最终修改
我找到了正确的文档,可以检查MapView实例和mapboxMap以查看可用的函数。
但是,我仍然不清楚如何在JavaScript中实际使用SDK,例如使用mapboxMap.addLayer(layer: Layer)
。如何制作新图层?
因此,有关如何在我的angular / nativescript应用程序中使用本机SDK的任何提示都很可爱。
原始问题
我需要在NativeScript项目中更多地控制我的Mapbox插件(我需要实现集群,自定义弹出窗口,自定义(可移动)标记等),而nativescript-mapbox并没有为此提供便利方法。 / p>
根据文档,onMapReady
事件旨在返回args.ios || args.android
下对本机MapView对象的引用,但是当我通过日志记录检查此对象时,它似乎只是一个字符串。 / p>
com.mapbox.mapboxsdk.maps.MapView{14ffde6 VFED..CL. ........ 0,0-1080,1584}
我已尝试引用我认为应该存在的参数(通过阅读Mapbox SDK文档)但似乎没有任何内容定义。
所以我的问题是,我如何在代码中访问本机MapView实例,以便我可以充分利用SDK来更好地控制插件?
关于如何执行简单操作的一些示例(例如创建MapMarker)将非常有用!
修改
根据评论,我使用com.mapbox.mapboxsdk.maps.MapView
调查了实例console.dir()
,并获得了一长串可用函数。但是,这些并不是docs over here中可用的内容。
我显然不理解某些事情,但感觉我已经接近了。任何人都可以帮我解决我在这里丢失的链接吗?
我试图回答的一些问题;为什么我发现的文档与此实例中可用的方法不同。我怎样才能做一些(看似)简单的事情,如添加或修改标记或符号图层?
修改2
我想我刚想通了,我正在检查一个MapView实例,它有一个名为mapboxMap的属性,我正在查看mapboxMap的文档,并想知道为什么它没有与MapView实例对齐。< / p>
所以只需使用console.dir(nativeMapView.mapboxMap)
,您就会看到它有操作地图所需的方法!
答案 0 :(得分:1)
com.mapbox.mapboxsdk.maps.MapView{14ffde6 VFED..CL. ........ 0,0-1080,1584}
这是一个实例,不确定日志记录为'字符串',但你可以尝试`const x = args.android//你得到的实例; console.dir(x)并查看哪些日志,您应该看到方法,成员等。
至于记录时的类型,它会给你类型,但是它在完整类的命名空间中,所以com.mapbox ... MapView是你正在记录的实例的类型。您可以对NativeScript中的其他布局/视图执行相同的操作。添加一个console.log(某物),其中某些东西是对布局或视图(按钮,标签)的参考,你会看到相同的。因此,在该实例上,您将可以访问SDK提供的任何内容。希望有所帮助。