gpt4 book ai didi

android - Kotlin `apply()` Dart 中的方法模拟

转载 作者:行者123 更新时间:2023-12-02 13:30:41 27 4
gpt4 key购买 nike

我希望能够做一些类似 apply() 的事情来自 Dart 中的 Kotlin。例如在 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()
};

在 Dart 语言中有一些类似的方法或方法吗?

我想知道标准库或语言本身是否有一些东西,而不是我自己的通用闭包扩展用于此目的?

谢谢。

最佳答案

虽然没有确切的类比,但我偶然发现了一个名为 Cascade notation 的特殊运算符。做类似的工作。

给定的示例将类似于:

UserDetails userDetails = userRepo.getUser()
..name = 'Name'
..email = 'email@test.com'
..callSomeInnerMethodOfUserDetails();

你也可以做一个嵌套的级联
UserDetails otherUserDetails = userRepo.getUser()
..name = (userRepo.getUser()
..firstName= "Other Name"
..assignFirstNameAndSurnameToNameField()).name
..email = "otherEmail"
..callSomeInnerMethodOfUserDetails();

希望能帮助到你。

关于android - Kotlin `apply()` Dart 中的方法模拟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61751961/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com