有什么方法可以调试 TypeError: Invalid value used as weak map key?

Ale*_*ova 5 dart polymer dart-polymer

我正在使用 Dart + Polymer,我们正在创建我们的应用程序的新版本,该版本进行了大量重构,删除了一些页面等等。

现在,有一个错误

类型错误:用作弱映射键的值无效

我认为它以某种方式连接到 Iron List 接收空数据,或者其他一些聚合物元素丢失了一些东西。

但是堆栈跟踪中没有有价值的信息。有没有办法调试这个错误,让我明白这个错误的由来?

Ale*_*ova 6

所以,我设法调试了这个问题。这就是对我有帮助的:

  1. 我设置了一个断点

    包:polymer/src/common/polymer_register.dart:21

    此步骤帮助我了解到底是什么聚合物元素未能正确注册。

  2. 这是一个包含霓虹灯动画页面的页面,因此我对所有内容都进行了注释,并逐一取消注释以找到该页面
  3. 在那里,我能够确定接收空数据并导致错误的 Iron 列表。

如果 Polymer 能够更准确地发现错误,那就太好了,因为我花了 6 个小时才找到错误。但我很高兴现在一切都好,所以这一步可能会帮助某人获得更流畅的 Dart/Polymer 体验