作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想使用 JSON2HTML 解析 JSON 中的 HTML 数据并将其呈现在 UIWebView 中(使用 Swift 3.0)。请让我知道如何实现它。提前致谢!
这是我尝试过的:
let jsfile1 = try!String(contentsOfFile: Bundle.main.path(forResource: "json2html", ofType: "js")!)
func loadJS()
{
var getData={}
var context = JSContext()
var valSwiftyJson:JSON = [:]
var test = context?.evaluateScript(jsfile1)
let testFunction = test?.objectForKeyedSubscript("json2html")
let urlString = //Have removed the URL string due to restrictions
Alamofire.request(urlString,encoding:JSONEncoding.default).responseJSON
{ response in
if let alamoJson = response.result.value
{
let swiftyJson = JSON(data:response.data!)
valSwiftyJson = swiftyJson["FormInfo"]["Form"]
print(valSwiftyJson)
}
}
let result = testFunction?.call(withArguments: [getData,valSwiftyJson])
webView.loadHTMLString((result?.toString())!, baseURL: nil)
}
最后,我通过创建一个index.html文件(本地存储)解决了这个问题,并引用了其中的JSON2HTML库。然后,每当我需要将 JSON 转换为 HTML 时,我都会动态添加 JSON(内部 HTML)内容。最后,我在 UIWebView 中加载了最终的 index.html(它的工作方式就像魅力一样)。
最佳答案
你在说这个吗library作为 JSON2HTML ?如果是这样,我认为 Swift 中没有一个库可以将 JSON 元素转换为 HTML。
您打算从后端下载 JSON 元素吗?然后,由于有一个 JSON2HTML 的 Node.js 包装器,我建议在同一服务器上进行从 JSON 到 HTML 的转换。因此,您只需下载 HTML 编译的数据并将其呈现在 UIWebView
中,就像这行代码(在 Swift 3 中)一样简单:
// html is the HTML data downloaded from your back-end
webView.mainFrame.loadHTMLString(html, baseURL: nil)
关于javascript - 如何从 JSON 解析 HTML 数据并将其呈现在 UIWebView 中(使用 Swift 3.0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42021893/
我是一名优秀的程序员,十分优秀!