arrays - 无法将 mutableList 映射到字符串数组 KMM -> Swift
问题描述
我是 swift 新手,我一直在尝试将这组员工映射到一组员工姓名(字符串)。我究竟做错了什么?
这是一个 KMM 项目,因此对象定义是用 Kotlin 编写的
data class Employee( //kotlin
val id:String,
val name:String,
val isHere:Boolean
)
data class Work( //kotlin
val id:String,
val name: String,
var employees: MutableList<Employee>,
val todoToday: Boolean
)
struct SideworkCardView: View {
var work : Work
var body: some View {
VStack(alignment: .leading) {
Text(work.name.capitalized)
.font(.system(size: 25, weight: .medium))
.foregroundColor( .black )
Text(
work.employees.map( { (employee) -> String in
employee.name //ERROR HERE
}).joined(separator: ", ")
)
.font(.system(size: 15, weight: .medium))
.foregroundColor(.black)
}
}
}
错误:“NSArray.Element”(又名“Any”)类型的值没有成员“名称”
解决方案
似乎由于某种原因 swift 没有适当地翻译 MutableList ,因此我得到了那个错误。作为修复,我将其更改为我的 Work 对象上的常规列表。当然,我必须更新一些依赖于该列表的代码是可变的,但没有什么是不能完成的。如果有人对为什么会发生这种情况有不同的修复或更多信息,请发布另一个答案。
推荐阅读
- javascript - 如何使用过滤器或查找从数组中获取对象数据?
- objective-c - 如何使用嵌入式 Mono 将本机 Objective-C 对象指针传递给 Xamarin iOS 包装器对象
- reactjs - 如何仅使用来自 antd 的 DatePicker
- python - python日志记录,将日志重定向到上下文中的文件
- java - 使用 ArgumentMatchers 存根 RestTeamplate 无法解决
- python - Window 10 触控平板上的左键单击问题
- arrays - 在 C 中初始化字符串数组
- reactjs - Typescript 在 VScode 中工作,但 eslint 为推断类型发出 react/prop-types 错误
- android - 自定义对话框中textview的高度为0
- arduino - 在具有多个按钮的 arduino 中一次使用一个按钮