gpt4 book ai didi

dart - 映射为自定义元素的已发布属性

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

当我将我的应用程序(dart 版本,未编译的 js)加载到浏览器中时,Dartium 给了我这个错误:

Uncaught Error: Error evaluating expression 'model["mode"]': EvalException: Can't assign to null: model

我可以看到错误是由如下代码引起的:

<polymer-element name="outer-element">
<!-- some codes here -->

<inner-element mode="model['mode']"></inner-element>

</polymer-element>
modelMap , model['mode']String ,以及 mode通过 @published String mode 声明在 <inner-element> .另外, model声明于 <outer-element>通过 @published Map model所以我可以把一些 map 传给 <outer-element>在另一个自定义元素中使用 <outer-element model="{{some map}}"> .

这个错误不会导致应用程序崩溃,实际上,据我所知,它没有任何影响,但看到它真的很烦人。 (我从开发开始就有这个错误!)

我浏览了数据流,但找不到问题。

任何想法将不胜感激。谢谢。

版本:
Dart 1.4.2
聚合物 0.10.1+1
聚合物表达式 0.10.0
dartium-win-full-stable-36647.0

如果有帮助,这里是堆栈跟踪:
Uncaught Error: Error evaluating expression 'model["mode"]': EvalException: Can't assign to null: model
Stack Trace:
#0 assign (package:polymer_expressions/eval.dart:137:18)
#1 _Binding.value= (package:polymer_expressions/polymer_expressions.dart:142:28)
#2 HtmlElement&Polymer.bindProperty (package:polymer/src/instance.dart:675:16)
#3 HtmlElement&Polymer.bind (package:polymer/src/instance.dart:447:34)
#4 _processBindings (package:template_binding/src/template_iterator.dart:186:38)
#5 _cloneAndBindInstance (package:template_binding/src/instance_binding_map.dart:71:19)
#6 _cloneAndBindInstance (package:template_binding/src/instance_binding_map.dart:60:26)
#7 _cloneAndBindInstance (package:template_binding/src/instance_binding_map.dart:60:26)
#8 TemplateBindExtension.createInstance (package:template_binding/src/template.dart:87:40)
#9 HtmlElement&Polymer.instanceTemplate (package:polymer/src/instance.dart:430:44)
#10 HtmlElement&Polymer.shadowFromTemplate (package:polymer/src/instance.dart:288:31)
#11 HtmlElement&Polymer.parseDeclaration (package:polymer/src/instance.dart:228:34)
#12 HtmlElement&Polymer.parseDeclarations (package:polymer/src/instance.dart:215:23)
#13 HtmlElement&Polymer.prepareElement (package:polymer/src/instance.dart:190:22)
#14 HtmlElement&Polymer.bind (package:polymer/src/instance.dart:437:42)
#15 _processBindings (package:template_binding/src/template_iterator.dart:186:38)
#16 _cloneAndBindInstance (package:template_binding/src/instance_binding_map.dart:71:19)
#17 TemplateBindExtension.createInstance (package:template_binding/src/template.dart:87:40)
#18 _TemplateIterator._handleSplices (package:template_binding/src/template_iterator.dart:449:53)
#19 _TemplateIterator._valueChanged (package:template_binding/src/template_iterator.dart:330:19)
#20 _TemplateIterator._updateIteratedValue (package:template_binding/src/template_iterator.dart:303:18)
#21 _TemplateIterator._updateDependencies (package:template_binding/src/template_iterator.dart:287:25)
#22 TemplateBindExtension._processBindingDirectives (package:template_binding/src/template.dart:50:34)
#23 _processBindings (package:template_binding/src/template_iterator.dart:197:51)
#24 _cloneAndBindInstance (package:template_binding/src/instance_binding_map.dart:71:19)
#25 _cloneAndBindInstance (package:template_binding/src/instance_binding_map.dart:60:26)
#26 _cloneAndBindInstance (package:template_binding/src/instance_binding_map.dart:60:26)
#27 TemplateBindExtension.createInstance (package:template_binding/src/template.dart:87:40)
#28 _TemplateIterator._handleSplices (package:template_binding/src/template_iterator.dart:449:53)
#29 _TemplateIterator._valueChanged (package:template_binding/src/template_iterator.dart:330:19)
#30 _updateIteratedValue (package:template_binding/src/template_iterator.dart:303:18)
#31 _check (package:polymer_expressions/polymer_expressions.dart:131:16)
#32 dirtyCheckZoneSpec.wrapUnaryCallback.<anonymous closure> (package:observe/src/dirty_check.dart:120:15)
#33 _rootRunUnary (dart:async/zone.dart:730)
#34 _ZoneDelegate.runUnary (dart:async/zone.dart:462)
#35 _CustomizedZone.runUnary (dart:async/zone.dart:667)
#36 _BaseZone.runUnaryGuarded (dart:async/zone.dart:582)
#37 _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:333)
#38 _DelayedData.perform (dart:async/stream_impl.dart:585)
#39 _StreamImplEvents.handleNext (dart:async/stream_impl.dart:701)
#40 _PendingEvents.schedule.<anonymous closure> (dart:async/stream_impl.dart:661)
#41 dirtyCheckZoneSpec.wrapCallback.<anonymous closure> (package:observe/src/dirty_check.dart:111:15)
#42 _rootRun (dart:async/zone.dart:719)
#43 _ZoneDelegate.run (dart:async/zone.dart:453)
#44 _CustomizedZone.run (dart:async/zone.dart:663)
#45 _BaseZone.runGuarded (dart:async/zone.dart:574)
#46 _BaseZone.bindCallback.<anonymous closure> (dart:async/zone.dart:599)
#47 dirtyCheckZoneSpec.wrapCallback.<anonymous closure> (package:observe/src/dirty_check.dart:111:15)
#48 _rootRun (dart:async/zone.dart:723)
#49 _ZoneDelegate.run (dart:async/zone.dart:453)
#50 _CustomizedZone.run (dart:async/zone.dart:663)
#51 _BaseZone.runGuarded (dart:async/zone.dart:574)
#52 _BaseZone.bindCallback.<anonymous closure> (dart:async/zone.dart:599)
#53 _asyncRunCallbackLoop (dart:async/schedule_microtask.dart:23)
#54 _asyncRunCallback (dart:async/schedule_microtask.dart:32)
#55 _handleMutation (file:///E:/b/build/slave/dartium-win-full-stable/build/src/dart/tools/dom/src/native_DOMImplementation.dart:588)

最佳答案

我怀疑它与:
Binding initialization when model is null

另请参阅此处的评论:
Polymer template repeat has weird side effect

绑定(bind)初始化可能导致 Polymer 分配给 null 或不可分配表达式的情况。以前他们试图抑制这个错误,但已经看到这实际上是一个错误并且应该通知开发人员的情况,所以他们改变了错误不被抑制而是打印的行为。

他们试图找出一种方法来改善这种体验,但似乎不太容易。

这就是我对阅读的一些帖子的解释,我没有任何其他信息。

关于dart - 映射为自定义元素的已发布属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24107159/

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