如何从 SwiftUI View Init 中的现有数组创建新数组

fs_tigre

在下面的代码中,我正在尝试创建一个数组,该数组使用( )recordsPlusOne内的数组中的所有项目以及需要在其中创建的一个新记录,但是当我recordsViewModelrecordsViewModel.recordsRecordsViewrecordsViewModel.recordsinit()

如何创建一个新数组,其中包含需要在 中创建的现有一加一记录中的所有init()项目RecordsView

代码:

struct RecordsView: View {
    @ObservedObject var recordsViewModel: RecordsViewModel
    private var recordsPlusOne: [Record] = []
    
    init(){
        let newRecord = Record()
        recordsPlusOne = recordsViewModel.records // thows error 1
        recordsPlusOne.append(newRecord)
    }// thows error 2

    var body: some View {
       // some code to display the records
    }
}

错误 1

在初始化之前使用的变量“self.recordsViewModel”

错误 2

从初始化程序返回而不初始化所有存储的属性

粗糙的

如果recordsViewModel将通过init参数注入是可能的,例如

init(vm: RecordsViewModel) {   // << here !!
    let newRecord = Record()
    recordsPlusOne = vm.records       // << pre-use !!
    recordsPlusOne.append(newRecord)
    recordsViewModel = vm                 // << initializing !!
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用现有数组的元素创建新数组?

多次调用SwiftUI View init

如何使用 TypeScript 中现有数组中的选定元素创建新数组?

如何从现有数组中创建嵌套数组

如何在SwiftUI中创建Blue View?

如何在SwiftUI中即时更新View?

如何在不复制数组的情况下创建对现有数组的新引用

如何将新数组插入现有数组?

如何从php中的现有数组制作一个新数组?

如何动态地将新数组添加到现有数组中

如何从numpy中的现有数组创建对角线数组

如何在 Ruby 中的现有数组上创建二维数组?

如何将新数组添加到现有数组并在 JavaScript 中返回新数组?

如何从JavaScript中的现有数组重建数组?

如何在YUI 3.11中监听View的“ after init”事件

如何使用带有新值的java在mongodb中的现有集合中附加现有数组

如何在 SwiftUI 中创建自定义 init 以使用来自单独文件的参数

如何在 React State 的现有数组中附加新值?

如何从Android在Firebase数据库的现有数组中插入新数据?

如何将新值推送到值匹配的现有数组中?

如何创建一个将对象推送到现有数组中的函数?

如何在SwiftUI中基于绑定枚举更改View的样式?

如何在SwiftUI中再次初始化View?

如何使用codeigniter中的会话动态地将新数组添加到现有数组中

如何在不循环的情况下使用现有数组值中的动态键映射新数组?

如何在SwiftUI的init函数中初始化@State变量?

如何基于带有数组的对象创建新对象

如何在 swiftUI 中显示数组数组

如何在swiftui中访问其他View结构中的View结构