2016-05-13 44 views
1

我有一個功能:如何調用成功與失敗的函數?

func retrieveArticleWithTopic(topicId id: String, success: ([Newsfeed] -> Void), failure: (NSError -> Void)) { 
    client.fetchEntries(["content_type": ContentType.Article.rawValue, "include": 10]) { (results) in 
     // TODO: some more code will go here 
     var feeds = [Newsfeed]() 
     success(feeds) 
    } 
} 

,我需要傳遞一個ID爲一個字符串。我正在努力調用這個函數並將值傳遞給它。我試過了:

ContentManager().retrieveTopics(TopicID:"Hello") 

但是我得到的錯誤是Missing argument for parameter failure in call

如何傳遞一個字符串到這個函數?

回答

0

successfailure參數是必需的(它們沒有默認值)。你必須通過兩大塊:

retrieveTopics(topicID: "hello", success: { newsfeeds in 
    print("retrieved \(newsfeeds)") 
}, failure: { error in 
    print("error: \(error)") 
}) 
0

你應該叫這樣的:

retrieveArticleWithTopic(topicId: "", success: { (newsfeeds) in 

    }) { (error) in 

} 

,或者您不希望處理的成功或失敗,你可以把它可選。

func retrieveArticleWithTopic(topicId id: String, success: ([Newsfeed] -> Void)?, failure: (NSError -> Void)?) { 

} 

retrieveArticleWithTopic(topicId: "", success: nil, failure: nil) 
相關問題