iOS Objective-C LocalStore в WKWebView

Я нашел этот 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();
                    }
            }
             }];
        }
    }];
}

person Tom Hammond    schedule 06.09.2017    source источник


Ответы (1)


Действительно, у вас в коде есть лишняя скобка.

- (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();
                }
         }];
    }
}];
person Anonymous    schedule 19.09.2017