Flutter | 记一次Mixin Analysis异常

问题描述

今天在更新了AndroidStudio后出现了异常,所有的Mixin都被分析器指出了错误。报错信息如下:

The class 'SingleTickerProviderStateMixin' can't be used as a mixin because it extends a class other than Object.

发生原因

最终发现是分析器出了问题,在Dart1中要使用Mixin需要强制继承至Object,而后来放宽了这一限制。参考这里,但默认情况下没有开启放宽。

解决方法

在项目根目录下创建 analysis_options.yaml 文件(和pubspec.yaml平级),并添加以下代码,开启SuperMixin

analyzer:
  language:
    enableSuperMixins: true

更多请参考这里