2016-10-02 65 views
4

我在我的Swift 3应用中使用Swinject。当我试图Swinject - 对会员的模糊引用

let container = Container() 
container.register(NetworkModeling.self) { _ in Network() } 

我得到一个错误说

Ambiguous reference to member 'register(_:name:factory:)' 

这里有什么问题?

+0

不编译器也给你可能的过载的名单? – Alexander

+0

swinject文档证明她一样 –

+0

你是如何安装Swinject的,例如。迦太基还是CocoaPods?文档中的哪些代码演示了这个问题? –

回答

8

我面临同样的问题,我认为在这种情况下编译器可能会更冗长一些。

不管怎么说,我的问题是在我的身边,而不是在Swinject

检查以下内容:

  1. NetworkModeling以及Network在你注册(他们是public,或internal的范围可见请记住,swift3引入了fileprivate和许多其他说明符,因此请确保您的标识符对注册码可见

  2. 确保Network符合NetworkModeling。由于无法看到继承,迅速编译器会引发错误约ambigous类型Swinject工厂

希望,这有助于

+2

# 2以上非常有帮助 –

相关问题