深入探索代码中的根键路径与测试驱动开发
1. 根键路径在代码中的使用
在常规的 Ruby 代码里,我们可以使用类似火车车厢连接的方式(属性名通过点号相连)来遍历结构,示例如下:
controller.region.capital.name
而对于可以作为根键路径一部分的对象,我们可以采用另一种表示方法:
controller.valueForKeyPath('region.capital.name')
valueForKeyPath 是绑定实现的一部分。这种表示方法在处理数组时表现出色。假设存在一个对象 country ,其 regions 属性是一个 Region 对象数组,我们可以通过以下方式获取所有首都名称的数组:
country.valueForKeyPath('regions.capital.name')
实际上,在键路径中使用数组隐式地执行了 Ruby 的 collect 操作。这也是表格列可以绑定到像 “arrangedObjects.display_name” 这样的键路径,并使用结果填充其单元格的原因。
2. 子类化 NSArrayController
我们将用一个子类
超级会员免费看
订阅专栏 解锁全文
10万+

被折叠的 条评论
为什么被折叠?



