我正在使用AngularDart构建应用程序,并且需要使用Dart(AwesomeMarkers)中尚未提供的Leaflet插件。
我已将dart:js
导入为JS
。这是代码:
JS.JsFunction icon = JS.context["L"]["AwesomeMarkers"]["icon"];
Map args = {"icon" : name, "markerColor" : color, "prefix" : "fa"};
return icon.apply([new JS.JsObject.jsify(args)]);
调试器显示函数icon
在JsFunction中定义良好并被捕获,但在调用apply
时,我收到此错误:
EXCEPTION: NoSuchMethodError: Class 'JsObject' has no instance getter '_icon'.
Receiver: Instance of 'JsObject'
Tried calling: _icon
我尝试了很多东西,但似乎都没有。
修改
感谢GünterZöchbauer的评论,我放弃了使用dart:js
并使用package:js
的想法。它的工作方式更好,但需要一些时间来实施。
对于那些有兴趣使用Leaflet with dart的人,这里有一个link到一个非常基本的互操作性文件,here另一个用于AwesomeMarkers。