2017-02-24 105 views
0

我使用Eureka作为我的上传表单。我有一个上传按钮,这样的:Swift 3函数参数(字典 - 数组)

<<< ButtonRow() { 
    $0.title = "UPLOAD"; 
}.onCellSelection { cell, row in 
    var formValues = self.form.values(); 
    formValues["userId"] = UserDefaults.standard.string(forKey: "userId"); 
    self.upload(parameters: formValues); // <- How do I us formValues ? 
} 

我得到这个错误:

Cannot convert value of type '[String : Any?]' to expected argument type 'Array'

而且我已经上传()函数:

func upload(parameters: Array<Any>) { // <- formValues? 
    print(parameters); 
} 

我不知道formValues是Dictionary还是Array?无论如何,我如何将这个参数传递给我的这个函数?

回答

1

它看起来像formValues类型Dictionary而不是Array。将您的上传功能参数更改为:

func upload(parameters: [String: Any?]) { 
    print(parameters); 
} 
+0

非常感谢您! –