gpt4 book ai didi

printing - Dart语言:打印报告

转载 作者:行者123 更新时间:2023-12-03 03:45:30 25 4
gpt4 key购买 nike

我想知道如何在Dart上打印报告。

基本上,这是 Activity 流程:

  • 用户单击“报告”按钮。
  • 创建新的浏览器窗口。
  • 相关数据被放置在新窗口中。

  • 当然,如果有任何API可以做到这一点,我会使用它。

    到目前为止,我已经尝试创建一个新窗口,在其上添加onMessage侦听器,并在主类上调用postMessage以发送数据。但是,它没有用。该消息永远不会到达另一侧(主>新浏览器窗口)。

    主 Dart 类

    var reportWindow;
    void createReportWindow() {
    reportWindow = window.open("report.html", "");
    }
    void sendMessage(String message) {
    reportWindow.postMessage(message, "*");
    }

    报告Dart类(链接到report.html)

    void startListening() {
    window.onMessage.listen((e) {
    print(e.data.toString());
    });
    }

    最佳答案

    更新资料
    开始从报告窗口发送到window.opener.postMessage(...),然后响应(message.source as WindowBase).postMessage(...)
    这可能是带有window.open返回值的错误(有关更多详细信息,请参见http://dartbug.com/20216)。
    原版的
    该单元测试中的代码应向您展示如何完成https://github.com/dart-lang/core-elements/blob/master/test/core_media_query_test.dart
    我从一个新的URL打开一个窗口,该窗口从服务器加载其内容和Dart脚本(当然也可以编译为JavaScript)。打开的窗口通过sendMessage与主窗口通信。这在两个方向上都有效。
    基本上,第二个窗口是第二个Dart浏览器应用程序。
    我想这可能并不是您要找的东西,但是您的要求可以实现。
    https://github.com/dart-lang/core-elements/blob/master/test/core_media_query_test.dart#L66这一行,注释掉的代码可能符合您的要求。我创建了以下解决方法,因为该代码应该从主窗口中的代码调整第二个窗口的大小,以测试<core-media-query>元素(顺便说一句也不起作用)。但是我认为您只需要打开窗口,注释掉的代码就可以正常工作。

    关于printing - Dart语言:打印报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27048607/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com