【问题标题】:Class has no instance setter 'id='类没有实例设置器'id ='
【发布时间】:2019-06-01 19:07:44
【问题描述】:

在飞镖中,我在尝试覆盖这样的属性时遇到此错误

var newId = state.myMatches[0][0].id = 90;

我收到这个错误

flutter: The following NoSuchMethodError was thrown while handling a gesture:
flutter: Class 'DivMatches' has no instance setter 'id='.
flutter: Receiver: Instance of 'DivMatches'
flutter: Tried calling: id=90

没有私有属性。都是公开的。任何帮助发生了什么?

谢谢。

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    不确定您的设置,但如果其他人得到了这个,我从我的映射设置变量中删除了“final”,它起作用了。

    【讨论】:

      【解决方案2】:

      您正在查找state.myMatches[0][0],这显然是DivMatches 的一个实例。然后您尝试将 90 分配给该对象的 id 属性,但 DivMatches 没有任何 id 设置器,因此分配失败并返回 NoSuchMethodError

      【讨论】:

      • “DivMatches 没有任何 id 设置器,”您能解释一下吗?我在 DivMatches 中有 id 属性,那么这里的设置器是什么?我需要写一些额外的功能吗?如何设置二传手?谢谢
      • 我宁愿问你在这里想要实现什么,因为你正在对 id 属性进行分配,而该属性是不可分配的。目前尚不清楚潜在的问题是什么。您可以添加一个 setter set id(int value) { ... },或者,如果 id 是最终变量,则将其设为非最终变量,但这仅适用于您自己的库。
      • 感谢您的宝贵时间。这是详细的问题。请大家看看能不能猜到,stackoverflow.com/questions/56413534/…谢谢
      • 嗨,非常感谢。我解决了。是的,这是最终的。而且 final 是不可更改的,所以出现了这个错误。非常感谢。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多