【发布时间】:2014-05-17 09:26:49
【问题描述】:
如何在 dart.. 中导入和使用任何第三方 javascript 库?我想在我的飞镖应用程序中使用snapsvg 来渲染 svg。但不知道如何添加依赖来添加和导入它。
我将js: any 添加到我的pubspec.yaml 并将packages/browser/interop.js 导入我的html。我在哪里放置下载的 snapsvg.js 并将其导入到我的 dart 源文件中以使用它。
我正在尝试使用来自 dart 的 snapsvg 框架来使用以下 javascript 代码。
s = Snap(800, 600);
s.rect(0, 0, 100, 100).attr({
fill: 'white',
stroke: 'black'
});
我在 dart 中尝试了这段代码:
import 'package:js/js.dart' as js;
void main() {
var s = js.context.Snap(800, 600);
s.rect(0, 0, 100, 100);
}
这在 dartium 中运行良好,但是当我在构建后作为 Javascript 运行时,出现 javascript 错误“在对象中找不到方法 zm”
我认为这不是正确的方法,我应该在代理上使用 callMethod。所以我改变了这样的代码
import 'dart:js' show context, JsObject;
void main() {
var snap = context['Snap'];
snap.callMethod('rect', 0,0,100,100);
}
这在 Dartium 中不起作用。如果有人可以在我的示例代码中提供如何从 dart 调用构造函数 Snap(800, 600) 以及 rect 和 attr 方法的示例,我将不胜感激。
【问题讨论】:
标签: dart dart-pub dart-js-interop