带有可选参数的 CastError(用于空值的空检查运算符)
CastError (Null check operator used on a null value) with optional parameters
我有一个带有可选参数的方法
void method1(String text,
{String? text2}) {
method2(text, text2: text2!);
}
方法 1 使用可选参数调用另一个方法
void method2(String text,
{String? text2 = 'helloWorld'}) {
print(text);
print(text2!);
}
当我在调用方法 1 时将空值传递给 text2 时,在方法 1 尝试调用方法 2 时出现错误 CastError(对空值使用空检查运算符)
我是否应该在 method1 中添加一个条件,例如:
void method1(String text,
{String? text2}) {
if(text2 == null)
{
method2(text);
}
else
{
method2(text, text2: text2!);
}
}
或更简单的东西。
上下文:颤振 2.10.4
谢谢
像这样使用三元运算更容易:
void method1(String text, {String? text2}) {
text2 != null ? method2(text, text2: text2) : method2(text);
}
我有一个带有可选参数的方法
void method1(String text,
{String? text2}) {
method2(text, text2: text2!);
}
方法 1 使用可选参数调用另一个方法
void method2(String text,
{String? text2 = 'helloWorld'}) {
print(text);
print(text2!);
}
当我在调用方法 1 时将空值传递给 text2 时,在方法 1 尝试调用方法 2 时出现错误 CastError(对空值使用空检查运算符)
我是否应该在 method1 中添加一个条件,例如:
void method1(String text,
{String? text2}) {
if(text2 == null)
{
method2(text);
}
else
{
method2(text, text2: text2!);
}
}
或更简单的东西。
上下文:颤振 2.10.4
谢谢
像这样使用三元运算更容易:
void method1(String text, {String? text2}) {
text2 != null ? method2(text, text2: text2) : method2(text);
}