gpt4 book ai didi

dart - 聚合查询选择器在 DartVM 上运行,但在编译后不在 Chrome 中运行

转载 作者:行者123 更新时间:2023-12-04 23:52:26 24 4
gpt4 key购买 nike

遇到一个奇怪的问题。在我的 Dart 代码中,我在屏幕上有一些聚合物组件,其中一个有我从 main() 调用的方法。

我通过做来获取对它的引用

PolyComp poly = querySelector("#idOfPolymer");
poly.flash();

这在 Dart 中非常有效。页面加载完毕,PolyComp 开始闪烁。但是,当我通过从 Dart IDE 运行 Build Polymer 应用程序在 Chrome 中运行它时,我收到一条错误消息,提示无法在 null 上调用 flash()。

我最终仅通过使用事件总线并让 PolyComp 监听我的事件来使其闪烁,但这太过分了。

我究竟做错了什么?这发生在最新的 Chrome、Firefox 和 Safari 中。

编辑:

我也为 JS 构建了以下聚合物应用程序并遇到了同样的问题。
https://github.com/sethladd/dart-polymer-dart-examples/blob/master/web/todo_element/todo.html

适用于 DartVM,而不适用于 Chrome,因为它在空元素上调用方法。

最佳答案

当您从 main() 运行此代码时方法它可能是一个时间问题。
你可以尝试类似的东西

import "package:polymer/polymer.dart";

main() {
initPolymer().run(() {
// code here works most of the time
Polymer.onReady.then((e) {
// some things must wait until onReady callback is called
});
});
}

另见 how to implement a main function in polymer apps

关于dart - 聚合查询选择器在 DartVM 上运行,但在编译后不在 Chrome 中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20932180/

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