Ссылка на Turbolinks 5 для iOS не помещает VisitableViewController в стек
Я играл с Turbolinks 5 и не могу заставить его правильно посещать новую страницу после нажатия на ссылку в моем приложении. Приложение загружает новый вид, как если бы он был заменен в веб-представлении, и не помещает новый контроллер представления в стек, как я ожидал. Как будто он не выполняет Turblonks.visit
Я запускаю приложение rails 5.1 с включенной Turbolinks 5. Моя ссылка выглядит так:
<%= link_to 'View', test_path(test_id), class: 'btn btn-secondary btn-block marginTop_short' %>
Как видите, в этой ссылке нет ничего особенного!
Код моего iOS-приложения очень прост:
import UIKit
import Turbolinks
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
var navigationController = UINavigationController()
var session = Session()
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
window?.rootViewController = navigationController
startApplication()
return true
}
func startApplication() {
session.delegate = self
visit(URL: NSURL(string: "http://localhost:3000")!)
}
func visit(URL: NSURL) {
print("visiting", URL)
let visitableViewController = VisitableViewController(url: URL as URL)
navigationController.pushViewController(visitableViewController, animated: true)
session.visit(visitableViewController)
}
}
extension AppDelegate: SessionDelegate {
func session(_ session: Session, didProposeVisitToURL URL: URL, withAction action: Action) {
print("trying to visit", URL)
print("action", action)
visit(URL: URL as NSURL)
}
func session(_ session: Session, didFailRequestForVisitable visitable: Visitable, withError error: NSError) {
let alert = UIAlertController(title: "Error", message: error.localizedDescription, preferredStyle: .alert)
alert.addAction(UIAlertAction(title: "OK", style: .default, handler: nil))
navigationController.present(alert, animated: true, completion: nil)
}
}
Когда я нажимаю на ссылку, она не срабатывает func session(_ session: Session, didProposeVisitToURL URL: URL, withAction action: Action)
Перезвоните.
Может быть, правильнее будет сказать, что при нажатии на ссылку веб-просмотр не отвечает или не создает предложение о посещении?
Что мне не хватает? Любая помощь будет оценена.
Дайте мне знать, если потребуется дополнительная информация или уточнение.