使用flutterdart vscode显示 "method isn't defined"(方法未定义),当我在调用前检查一个特定的mixin时,它就会显示。

问题描述 投票:0回答:1

这是我第一次使用dart,但我却被这个愚蠢的错误所困扰。我有90%的信心,这个错误在于vscode部分,因为运行应用程序时没有错误显示。

也许我处理问题的方式不对,我只是想在实现 mixin 的对象中调用 mixin 函数。例如,在java中,需要投掷组件变量,但在这种情况下,我无法让投掷发挥作用。

编码

code

错误

方法'onPanUpdate'没有为'Component'类定义。 请尝试将名称改成现有方法的名称,或者定义一个名为'onPanUpdate'的方法。

源代码

回购链接

组件类源

flutter dart visual-studio-code mixins
1个回答
0
投票

也许我处理问题的方式不对,我只是想在实现 mixin 的对象中调用 mixin 函数。例如,在java中,需要对组件变量进行投掷,但在这种情况下,我无法让投掷工作。

要想成功,必须用下面的代码来完成。

for (var component in this.components) {
  if (component is PanDetector) {
    (component as PanDetector).onPanUpdate(details);
  }
}

特别感谢 @Moqbel

© www.soinside.com 2019 - 2024. All rights reserved.