如何使用dart打印iframe的内容?

时间:2017-03-10 14:49:21

标签: dart

contentWindow的dart版本没有打印方法 如果无法直接从dart打印,我怎么能使用常规的javascript来使用js interop打印iframe?

1 个答案:

答案 0 :(得分:1)

这应该有效dart:js

import 'dart:js';
...
final iframe = querySelector('iframe') as IFrameElement;
(new JsObject.fromBrowserObject(iframe)['contentWindow']['print'] as JsFunction).apply(<dynamic>[]);

使用package:js

@JS()
library maps;

@JS('document.querySelector')
external JsWindow query(String selector);

@JS("Window")
class JsWindow {
  external JsWindow get contentWindow;
  external void print();
}

query('iframe').contentWindow.print();