我想知道直接使用“content = {}”参数而不是“{}”是否更好,尽管我看到更多人使用“{}”。
使用其中之一,代码是否更干净,或者代码加载速度是否更快? 有什么好的做法吗?
使用“{}”时
@Composable
fun MyComposable(){
Box{}
}
使用“content = {}”时
@Composable
fun MyComposable(){
Box(content = {})
}
此处使用的概念是 Kotlin 尾随 lambda 和 Kotlin 命名参数。
Kotlin 命名参数
所以,这可以用命名参数来编写,
@Composable
fun MyComposable(){
Box({})
}
像这样
@Composable
fun MyComposable(){
Box(content = {})
}
Kotlin 尾随 lambda
来自文档,
根据 Kotlin 约定,如果函数的最后一个参数是函数,那么作为相应参数传递的 lambda 表达式可以放在括号之外
这意味着,
@Composable
fun MyComposable(){
Box({})
}
和
@Composable
fun MyComposable(){
Box() {}
}
是一样的。