【问题标题】:Deploying Angular Dart component with canvas via shadowRoot: what is missing?通过 shadowRoot 使用画布部署 Angular Dart 组件:缺少什么?
【发布时间】:2014-06-21 09:04:54
【问题描述】:

我有一个 angular dart 应用程序,其中一个组件通过 shadowroot 使用画布。这在 Dartium 中运行良好,“作为 javascript 运行”和 pub 服务。但是,当我运行 pub build 并在 build/web 中启动 html 文件时,该组件不会出现。代码在

https://github.com/siddhartha-gadgil/mathlets

我应该使用一些特殊的转换器,还是做一些不同的东西来构建而不是发球?

【问题讨论】:

    标签: dart angular-dart


    【解决方案1】:

    我尝试了您的项目,它似乎工作正常。

    我过去所做的是运行 pub build 并点击 dartium 中的构建文件,但这是行不通的。因此,您必须从 chrome 正确地访问构建文件。因此,如果我在 chrome 中加载 .../mathlets/build/web/mathlets.html 它工作正常。

    这是因为pub build 是发布版本,它不会复制任何 dart 文件。但是,索引文件仍然检查是否启用了 dart,而不是尝试使用 dart 文件。在 dartium 中,dart 已启用,但构建没有 dart 文件。在 chrome 中,dart 未启用,因此“packages/browser/dart.js”文件动态地将 mathletes.dart.js 写入索引并以这种方式启动应用程序。

    如果您想解决此问题并同时提高发布版本的性能,您可以使用此转换器:http://pub.dartlang.org/packages/dart_to_js_script_rewriter

    我们也在使用它。确保它是最后一次运行的变压器,如果它在角度变压器之前有问题。

    【讨论】:

    • 单击加载“file:///”的链接即使在 chrome 中也不起作用,我认为出于类似的原因(或在这种情况下与默认文件名有关)。但是目录的 scp到一个实际的服务器来完成这项工作。
    • 啊,这也是我忘记的事情。我使用 IntelliJ 13,它为我提供了一个本地 Web 服务器来访问,localhost:XXXX 之类的东西。仅供参考,您也可以在发布构建模式下运行 pub servepub serve --mode=release,这将以与 pub build 构建文件相同的方式提供服务。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-23
    • 1970-01-01
    • 2013-09-16
    • 2019-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多