我找到了 this SO解释了如何使用 javascript 设置本地存储。
我正在尝试将它从 Swift 转换为 Objective-C。出于某种原因,它让我很不舒服,就像我缺少一个支架一样,但我似乎无法弄清楚。有什么想法可以正确地将 Swift 翻译成 iOS 吗?
这是我目前所拥有的:
- (void)webView:(WKWebView *)webView
didFinishNavigation:(WKNavigation *)navigation {
[webView evaluateJavaScript:@"localStorage.getItem(\"key\")" completionHandler:^(id result, NSError *error) {
if (error == nil) {
[webView evaluateJavaScript:@"localStorage.setItem(\"key\", \"value\")" completionHandler:^(id result, NSError *error) {
if (error == nil) {
webView.reload();
}
}
}];
}
}];
}
最佳答案
确实,您的代码中有一个额外的括号。
- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation {
[webView evaluateJavaScript:@"localStorage.getItem(\"key\")" completionHandler:^(id result, NSError *error) {
if (error == nil) {
[webView evaluateJavaScript:@"localStorage.setItem(\"key\", \"value\")" completionHandler:^(id result, NSError *error) {
if (error == nil) {
webView.reload();
}
}];
}
}];
关于WKWebView 中的 iOS Objective-C LocalStore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46082813/