问题标签 [associated-value]

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.

0 投票
1 回答
551 浏览

swift - 枚举关联值和泛型

我有一个这样的枚举,它包含不同的初始状态:

我想像这样使用它们:

这是我正在使用的通用函数:

我当然得到这个错误:

无法将“InitialState”(0x109466da0)类型的值转换为“ListTableViewState”(0x1094912b0)。

如何在通用函数中访问它loadInitialState

0 投票
1 回答
78 浏览

swift - 枚举关联值令人困惑

当我尝试使用 func obj func 时,出现错误:

无法使用类型为“(消息:(QueueAddable))”的参数列表调用“obj”

我对 Swift 类型感到困惑。Obj func 用于获取解码的具体类型。

0 投票
4 回答
7754 浏览

swift - 对多个“if case”语句使用“或”逻辑

假设我有一个带有关联值的枚举案例,以及该枚举类型的两个变量:

如果我想检查两个变量是否与关联值的一般情况相匹配,我可以用逗号来做到这一点:

但我需要检查是否符合案例,如下所示:

但是,这不会编译。是否有另一种方法可以编写此代码以使逻辑正常工作?

0 投票
2 回答
43 浏览

swift - 嵌套枚举以允许多个时间范围

我希望实现某种风格的枚举语法/功能,但是我不确定如何实现它。目前我有以下内容:

我想消除与计数相关的值,除非它是必需的。例如:

这可能吗?即使没有办法完全实现我正在寻找的东西,我也会感谢有关潜在改进的建议。在大多数情况下,我最终使用 (count: 1),这似乎有点冗长。如果默认值可与关联值一起使用,我会使用

有什么建议么?

0 投票
0 回答
23 浏览

ios - 检查 Swift 关联枚举上的单例不等式?错误:“条件中的变量绑定需要初始化程序”

我正在尝试比较我的关联枚举的单个案例的不平等。

我可以通过编写检查它是否在一行中加载

if case .loading = myEnumVariable

但是,我无法以这种方式检查不等式,我收到此错误:Variable binding in a condition requires an initializer.

这个错误是什么意思?

有没有办法用一行来检查这种不等式?

0 投票
2 回答
797 浏览

swift - 通过具有关联值的枚举属性过滤项目数组

我想过滤一个MyClass项目数组,所以过滤后的数组不会包含类型为的实例.none

0 投票
1 回答
388 浏览

swift - 为 switch 中的所有情况展开关联值

我有一个与此类似的枚举,其中所有案例都包含相同的关联值content

我知道我可以将 astruct与 a 一起使用rowTypeacontent属性,但请不要讨论这个,而是看看以下内容: 当我想切换所有情况时,我当然可以这样做:

甚至:

现在我的枚举包含更多的案例,并且在开发过程中可能会进一步增长,所以我不方便将所有案例都列出在同一个案例中case语句中列出所有案例来解开content论点。

所以我很好奇并想知道:我能否以某种方式“通配符”枚举案例本身并仍然打开content字段?就像一个default具有相关价值的案例......

我希望能够做类似的事情...

...或者可能在默认情况下访问关联的值。

我做了一些研究,但找不到答案,所以我很高兴你的想法。

0 投票
2 回答
1504 浏览

swift - 枚举具有关联值的枚举 - Swift

我有一个带有关联值的枚举。此外,每个值都有一个字符串描述。我怎样才能得到所有案例的描述?

我正在寻找的是:

0 投票
2 回答
2595 浏览

swift - SwiftUI 中的关联枚举状态

如何在 SwiftUI@State的语句中使用关联的枚举作为变量?if

编译器报告此错误:

协议“Equatable”要求“ProfileView.Choice”符合“Equatable”

0 投票
1 回答
159 浏览

swift - Swift Enum 如何符合协议变量的设置和获取?

我的代码:

在参数 get{} 方法中:objc_getAssociatedObject(self, &key) 为 nil。我想知道为什么?谢谢你!!