Я пытаюсь вызвать локальную функцию ViewController из ContentView. Функция использует некоторые локальные переменные и не может быть перемещена за пределы ViewController.
class ViewController: UIViewController {
func doSomething() {...}
}
extension ViewController : LinkViewDelegate {...}
, расположенный в другом файле:
struct ContentView: View {
init() {
viewController = .init(nibName:nil, bundle:nil)
}
var viewController: viewController
var body: some View {
Button(action: {self.viewController.doSomething()}) {
Text("Link Account")
}
}
}
UIViewController не может быть изменен на что-то вроде UIViewRepresentable, потому что LinkViewDelegate может толькорасширить UIViewController.