Skip to content

Repository files navigation

Dependency

A dependency Injection solution for SwiftUI. Thank you Antoine van der Lee and Vincent Pradeilles for initially showcasing this idea.

Usage

Register a Service as a Dependency

privatestructUserServiceKey:DependencyKey{staticvarcurrentValue:UserService=MyUserService()}extensionDependencyValues{varuserService:UserService{get{Self[UserServiceKey.self]}set{Self[UserServiceKey.self]= newValue }}}

Access a Service, e.g. inside a ViewModel

@Dependency(\.userService)privatevaruserService

Set a Service, e.g. inside a Unit Test

DependencyValues[\.userService]=MockUserService()

About

A dependency Injection solution for SwiftUI. Thank you Antoine van der Lee and Vincent Pradeilles for initially showcasing this idea.

Topics

Resources

Stars

48 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages