为什么我得到“类型值'TableViewController'没有成员'地方'''?

时间:2016-06-06 14:54:27

标签: xcode swift parse-platform

我想从parse(字符串)下载一些数据,我收到错误

"Value of type 'TableViewController' has no member 'place'上写着:

self.place.append(spotdetail.name!)

我将此作为全局var:

var place = [""]

这是我在ViewDidLoad中的代码:

let query = PFObject.query()
query!.findObjectsInBackgroundWithBlock ({ (objects, error) in

    if let skateparks = objects {
        for object in skateparks {        
            if let spotdetail = object as PFObject! {                            
                self.place.append(spotdetail.name!)        
                self.tableView.reloadData()                           
            }        
        }        
    }

    print(place)               
})

我可以更改什么才能使它工作,因为我不明白为什么它不能识别var place,因为它在同一个视图控制器中(tableView)

谢谢!

2 个答案:

答案 0 :(得分:0)

在关闭的任何地方,您应该使用self关键字作为属性:

print(self.place)

答案 1 :(得分:0)

正如originaluser2所指出的那样,你使用的是全局变量,所以你不需要使用self.place。另外我不确定你在PFObject中继承了什么,但你的func名称是findObjectsInBackgroundWithBlock,你在那里重新加载你的表数据。请记住,您只能与主线程上的UI进行交互。这将导致错误,因此您可以传回回调,或者对主队列执行GCD调用,然后在那里重新加载数据。