2017-02-14 22 views

回答

0

在斯威夫特3 - 入 'PARAMS' 作为[字符串:任何],其中PARAMS [ “函数”] == “getSomeData”

let funcName = String(format: "%@:", (params["function"] as? String)!) 
let selector = NSSelectorFromString(funcName) 
self.perform(selector, with: params) 

func getSomeData(_ params: [String: Any]) { 
    print(params) 
} 
+0

你的解决方案的工作,但不推荐。 Swift正在从创建字符串选择器开始。如果斯威夫特在不久的将来完全消除这种能力,我一点都不会感到惊讶。相反,你应该使用Swift版本的函数签名,而不是从字符串中根本建立一个选择器。 –

+1

推荐的方式是什么? –

+0

是的Duncan C,感谢您的反馈;但抱歉,这不是很有建设性?这个建议背后的代码是什么? – user3069232