Pav*_*sha 8 android dart kotlin flutter
我希望能够apply()在 Dart 中使用 Kotlin 做类似的事情。例如在科特林中
var userDetails: UserDetails = userRepo.getUser().apply{
//here 'this' is UserDetails so all the further calls are made in that context
name = "Name"
email = "email@test.com"
callSomeInnerMethodOfUserDetails()
};
Run Code Online (Sandbox Code Playgroud)
Dart 语言是否有类似的方法或方式?
我想知道标准库或语言本身是否有一些东西,而不是我自己的通用闭包扩展用于这种目的?
谢谢。
Pav*_*sha 10
虽然没有确切的模拟,但我偶然发现了一个称为级联表示法的特殊运算符,它可以完成类似的工作。
给定的示例将类似于:
UserDetails userDetails = userRepo.getUser()
..name = 'Name'
..email = 'email@test.com'
..callSomeInnerMethodOfUserDetails();
Run Code Online (Sandbox Code Playgroud)
您还可以进行嵌套级联
UserDetails otherUserDetails = userRepo.getUser()
..name = (userRepo.getUser()
..firstName= "Other Name"
..assignFirstNameAndSurnameToNameField()).name
..email = "otherEmail"
..callSomeInnerMethodOfUserDetails();
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你。
| 归档时间: |
|
| 查看次数: |
1667 次 |
| 最近记录: |