跳到主要内容

assignment_of_do_not_store

'{0}' 被标记为 'doNotStore',不应赋值给字段或顶层变量。

描述

#

分析器会在以下情况产生此诊断:当一个函数(包括方法和 getter)的值,被显式或隐式地标记为 doNotStore 注解,并且该值被存储在一个字段或顶层变量中时。

示例

#

以下代码会产生此诊断,因为函数 f 的值被存储在顶层变量 x 中:

dart
import 'package:meta/meta.dart';

@doNotStore
int f() => 1;

var x = f();

常见修复方法

#

将对该字段或变量的引用替换为对生成该值的函数的调用。