📌  相关文章
📜  dart 参数类型 'String' 不能分配给参数类型 'Uri' - Dart (1)

📅  最后修改于: 2023-12-03 15:00:20.322000             🧑  作者: Mango

Dart 参数类型 'String' 不能分配给参数类型 'Uri'

当你在Dart中使用Uri类型作为参数类型时,你需要传递一个Uri类型的值,因为Dart编译器通过编译时类型检查来确保函数被正确地调用。如果你试图传递一个不同类型的值,编译器会抛出类型错误。

举个例子,如果你有一个函数接受Uri类型的参数,但你尝试传递一个字符串类型的值,你会得到以下错误:

Type 'String' is not a subtype of type 'Uri' in type cast

这是因为Dart编译器无法将一个字符串转换为一个Uri,因为它们是不同的类型。

为了避免这个错误,你需要确保你只传递Uri类型的值给这个函数。你可以创建一个Uri对象来指定要传递的URI,或者你可以使用Dart自带的Uri.parse() 函数将一个字符串转换为一个Uri:

Uri myUri = Uri.parse("https://mydomain.com");
myFunction(myUri);

使用Uri类型参数可以提高代码的健壮性,因为类型检查可以在编译时发现潜在的类型错误,以及提供更好的文档和自动完成。

希望这个简短的介绍可以帮助你理解Dart参数类型的使用!