首页 > 解决方案 > Swift Abort Trap 6 在编译期间由在@Published String 中放置一个值引起

问题描述

我已经向 Apple (#7654122) 提交了错误报告,但我希望有人知道解决方法,因为此时我被困在我的项目上,无法取得进展。

class BaseData: ObservableObject {
    @Published var pmtstr = "" // <-- here

    // ... bunch of other stuff
}

class DataWhatIsLoanPayment: BaseData {
    // ... other stuff

    override func calculate() {
        super.calculate()

        // ... other stuff

        self.pmtstr = "stuff" // <-- here
    }
}

当我设置self.pmtstr = "stuff"并尝试编译时,编译器会因 Abort Trap 6 而崩溃。如果我注释掉该行,则应用程序会正确编译。

如果我@Published从 的初始声明中删除pmtstr,则应用程序可以正确编译。如果我放回@Published后面,编译器会因 Abort Trap 6 而崩溃。

我需要能够更新此字符串并发布计算结果,以便在开发此应用程序方面取得进展。

有关解决方法(或修复)的任何建议?

标签: swiftswiftuicombine

解决方案


推荐阅读