在空值上调用了 getter 'isNull'



在执行以下flutter代码时,我正在使用getx和getstorage包。我想检查一个变量是否为null,但我得到了以下错误。执行以下代码时,名为Variable的变量未存储在磁盘上。

发生异常。NoSuchMethodError(NoSuchMethod错误:对null调用了getter"isNull"。接收方:空尝试调用:isNull(

屏幕。dart

TextButton(
onPressed: () {
var _variable =  userStorage.read('variable');
print('_variable = $_variable'); 
// above prints _variable = null
if(_variable.isNull){
// do something if its null
// but results in flutter error
}
else{
// do something else
}
},
child: Obx(() => (Text(
'variable value='+controller.variable.value,
)
)
)
)

控制器。dart

class Controller extends GetxController {
var userStorage = GetStorage();
}

如果为空,则使用默认值

var _variable =  userStorage.read('variable') ?? "notSet";
if(_variable == "notSet"){
// do something 
}
else{
// do something else
}

最新更新