2

我有一个控制器,我需要在其中导入两个 pod。

import Realm
import ReactiveSwift

问题是两者都有一个名为Property.

现在,如果我在导入两个 pod 时使用它,那么它会给我编译时错误Cannot specialize a non-generic definition

对于解决方法,

我创建了一个单独的文件并向控制器添加了扩展名,仅在其中导入了 Realm。并将 ReactiveSwift 保存在控制器文件中。这有助于我防止错误。但这是最好的方法吗?

4

2 回答 2

3

为了让编译器能够决定Property您要使用哪个元素,您必须添加命名空间。在这种情况下:

  • Realm.Property使用Property元素Realm
  • ReactiveSwift.Property使用Property元素ReactiveSwift
于 2018-02-13T08:13:31.353 回答
0

所以这里的问题是“属性”在 RealmSwift 和 ReactiveSwift 中也可用。

所以在这里如果你想使用 Realm 属性作为上面的答案建议你可以添加Realm.propertyReactiveSwift.Property访问元素。

除此之外,您还可以制作类型别名,还可以使用扩展名将代码分成两个文件

于 2018-02-13T10:02:51.560 回答