代码之家  ›  专栏  ›  技术社区  ›  Kitcc

如何修复错误信息:颜色不是类型错误

  •  0
  • Kitcc  · 技术社区  · 4 年前

    最近在运行了一个颤振升级后,我注意到在颜色类型方面出现了不少错误。例如下面的代码,颜色被标记为错误。错误消息是:颜色不是类型。

    class ChoiceCard extends StatelessWidget {
      final String cardText;
      final String cardImage;
      final double width;
      final double height;
      final Color color;
      final Category category;
      final VoidCallback choiceCardCallback;
    

    在试图找出为什么会发生这种情况后,我试着编译我的应用程序,发现这个应用程序实际上运行良好,所以没有实际错误。然而,在应用程序中标记所有这些红色错误,很难判断其中是否存在“真实”错误。 有没有其他人碰到过这个。我想把它弄清楚。

    0 回复  |  直到 4 年前
        1
  •  0
  •   XtremeDevX    4 年前

    我知道这甚至不可能是一个永久性的修正,尽管我建议你让Flutter自己得到变量的类型。。。

    我知道在初始化过程中声明变量的类型有很多好处,不过,作为临时解决方法,我建议您现在声明一个最终变量,如下所示:

    class ChoiceCard extends StatelessWidget {
      final cardText;
      final cardImage;
      final width;
      final height;
      final color;
      final category;
      final choiceCardCallback;
    

    如果需要,请确保在类构造函数中包含最终字段:

    ChoiceCard({this.cardText, this.cardImage, this.width, this.height, this.color, this.category, this.choiceCardCallback});
    

    接下来,在本例中为变量赋值时 color :

    color = Colors.red;
    

    这将有望暂时修复您的错误,因为flutter本身会发现 颜色

    谢谢,如果有帮助请告诉我。

        2
  •  0
  •   NullByte08    4 年前
    1. 在中更新SDK版本公共规范(必须是2.6.0或更高版本)
    environment:
       sdk: ">=2.7.0 <3.0.0"
    
    1. 工具->颤振->颤振清洁

    2. 文件->使缓存失效/重新启动

    或者

    如果上述解决方案不起作用,请在文件或包中查找任何未完成的代码并完成它。或者尝试解决文件或包的其他部分中发生的其他错误。如果有未完成的代码,服务器可能会有其他错误。