问题标签 [customstringconvertible]

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 回答
151 浏览

ios - 如何使可重用视图接受泛型类型

我创建了一个可重用的控件,用于我正在处理的项目中。它只是 aUITextField将 a 显示UIPickerView为它的inputView

在此处输入图像描述

目前它只接受一个字符串数组并返回一个字符串。我试图通过在泛型的帮助下使其接受/返回任何类型(例如结构和枚举)来使其更具可重用性。我希望使结构/枚举符合CustomStringConvertible并使用描述属性值作为选择器视图选项的显示值。

但我很难弄清楚如何做到这一点。我遇到的所有文章、问题、教程都涉及协议。所以我有点困惑。

如何使optionsandoption变量接受/返回具有泛型的任何类型?

我的意思是,假设我创建了一个名为State.

我没有将字符串传递给视图,而是试图让它接受属性中的State对象实例,options并让视图使用该description值作为显示值。当用户选择一个时,它会通过属性返回选择的State对象。option

演示项目

0 投票
0 回答
14 浏览

format - as.POSIXct 有时无法转换

请看下面的例子:一些值不能被翻译as.POSIXct

第一个是工作,但是,第二个没有工作有什么区别!

0 投票
1 回答
29 浏览

swift - 相当于 Haskell Show 的 Swift

什么是 Haskell Show 的 Swift 等价物,用于在带有案例的枚举中打印值?我读过 Show 与 Java toString() 方法非常相似,Swift CustomStringConvertible 可能是一个不错的选择。

例如,在 Fraction 实例上使用 print 将显示:

我不想打印整个案例,而是只打印中间带有斜线的数字。例如“1/2”。

我当前的代码如下:

0 投票
3 回答
100 浏览

swift - 如何获取 Swift 枚举的默认字符串表示形式以进行进一步定制

从 Swift 中的枚举开始:

对于大多数人来说,这样的表达方式:

将产生一个很好的结果,因为打印的形式与代码形式相匹配(例如 .Hz == "Hz")。

但是对于M3_Hour,我想将其打印为m³/hr. 所以符合CustomStringConvertable,对吧?我认为以下方法行不通:

它没。无限递归。认为这样。但是 Swift 经常让我感到惊讶(无论是好的还是坏的)。

如果枚举是超级/子类型关系,我会调用描述的“超级”版本来获取枚举的“默认”文本呈现。但我不确定如何在我的错误分支中获得“枚举的默认字符串化”,以便我可以将它调整为一个不同的值。有没有办法做到这一点?