Swift - Type没有成员

时间:2016-05-20 20:17:29

标签: swift class static-methods public subclassing

我有一个名为APIGroup的基本类,其唯一目的是进行子类化(除了[但]]用于除子类访问的某些static属性之外的任何内容。看起来有点像这样:

public class APIGroup {
    public static let someProperty : String = "I am a property!"
}

我有一个子类Track,它定义了一个类型方法search,如下所示:

public class Track : APIGroup {
    public static func search(name: String) -> Void {
        print("Track search initiated. Name: \(name)")
        print("And the property is: \(someProperty)")
    }
}

这两个类在同一模块的单独文件中定义。在另一个目标中,我导入模块并尝试调用:

import MyModule

MyModule.Track.search("testing...")

但这会引发:Type 'Track' has no member 'search'。我做错了什么?

1 个答案:

答案 0 :(得分:0)

将此代码放入Playground可以正常使用:

import Foundation

public class APIGroup {
    public static let someProperty : String = "I am a property!"
}

public class Track : APIGroup {
    public static func search(name: String) -> Void {
        print("Track search initiated. Name: \(name)")
        print("And the property is: \(someProperty)")
    }
}

Track.search("testing...")

如果它们位于同一模块中,则无需导入或使用模块名称。

enter image description here