Зависимости Swinject не инициализируются должным образом: Swinject: разрешение не выполненоIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Зависимости Swinject не инициализируются должным образом: Swinject: разрешение не выполнено

Сообщение Anonymous »

У меня возникла проблема при попытке инициализировать зависимости через контейнер с помощью Swinject. Я получаю сообщение об ошибке:

Swinject: разрешение не выполнено. Ожидаемая регистрация:
{ Сервис: LoginViewModel, Factory: Resolver -> LoginViewModel Доступные регистрации:
MyApp/MyApp.swift:29: Неустранимая ошибка: неожиданно обнаружено ноль при развертывании необязательного значения< /p>

Не знаю, в чем может быть проблема. Буду очень признателен за любую информацию.
Вот упрощенная версия моего кода:
DIController.swift:
import Swinject
import Supabase

class DIContainer {
static let shared = DIContainer()
let container: Container

private init() {
container = Container()
}

func initializeDependencies() async {
container.register(LoginViewModel.self) { resolver in
LoginViewModel(supabaseClient: supabaseClient)
}
}
}

MyApp.swift
import SwiftUI
import Swinject
import SwiftData

@main
struct MyApp: App {
let persistenceController = PersistenceController.shared

init() {

// Initialize dependencies
Task {
await DIContainer.shared.initializeDependencies()
}
}

var body: some Scene {
WindowGroup {
ContentView()
.environmentObject(DIContainer.shared.container.resolve(LoginViewModel.self)!)
}
}
}


Подробнее здесь: https://stackoverflow.com/questions/785 ... tion-faile
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»