ImageLoader.swift 705 B

123456789101112131415161718192021222324252627282930
  1. //
  2. // ImageLoader.swift
  3. // fiveConstant
  4. //
  5. // Created by 李建 on 2023/1/30.
  6. //
  7. import Foundation
  8. import Combine
  9. class ImageLoader : ObservableObject {
  10. var didChange = PassthroughSubject<Data, Never>()
  11. var data = Data() {
  12. didSet {
  13. didChange.send(data)
  14. }
  15. }
  16. func loadImage(urlString:String) {
  17. guard let url = URL(string: urlString) else {return}
  18. let task = URLSession.shared.dataTask(with: url) { data, response, error in
  19. guard let data = data else { return }
  20. DispatchQueue.main.async {
  21. self.data = data
  22. print("imageloader1")
  23. }
  24. }
  25. task.resume()
  26. }
  27. }