问题标签 [swift-compiler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - 带有索引的 SwiftUI ForEach -“编译器无法在合理的时间内对该表达式进行类型检查”
在我正在编写的 swiftUI 视图中,我需要使用 a ForEach
,访问列表的每个元素及其索引。我能找到的关于这个的大部分信息都说是用.enumerated()
在ForEach(Array(values.enumerated()), id: \.offset) { index, value in }
但是,当我尝试这样做时,我认为:
我得到了The compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
在线错误var body: some View {
我还注意到这段代码会导致一些其他问题,比如让 Xcode 自动完成非常慢。
有什么想法可以解决这个问题吗?这似乎是一个非常简单的观点,我认为我正在做ForEach
我应该做的。
谢谢!
swift-compiler - Swift Combine Publisher - 捕捉来自 Void 发布者的错误
我有一个带有AnyPublisher<Void, Error>
签名的发布者,我想在函数中执行该签名并返回一些内容以指示发布者是失败还是成功。我正在尝试找出使用什么技术来运行发布者并返回结果。
一种是像这样传入完成闭包和接收器:
但我觉得有更好的方法来做到这一点。主要是我将空闭包传递给.sink(...)
.
我可以只返回一个,AnyPublisher<Void, Error>
但这只是将错误检查责任传递给调用代码。
那么有没有更好的方法来编写这样的函数?一些我没有注意到的组合功能?函数的不同签名?
xcode - 归档时翠鸟 Swift 编译器错误
我正在使用xCode 13 beta
4 并希望归档包含Kingfisher
. 该应用程序在 下运行良好iOS 15
,但是当我将其存档时出现以下错误。有人知道我应该怎么做吗?谢谢!
swift - 将 Swift 脚本编译为通用二进制文件很热
我们可以很容易地编译一个 Swift 脚本:
但是,这只适用于当前架构。
我找到了一些为多种架构构建的命令,但它们似乎需要设置一个新项目。我不想或不需要这样做,现在我只想轻松编译单个脚本文件,因此swiftc
. 有没有办法做到这一点?
作为奖励,是否需要安装 Rosetta 2 才能生成通用二进制文件,或者是否可以在没有它的情况下制作它们?