小编Nob*_*adi的帖子

Swift Package Manifest - 库目标和目标依赖项之间有什么区别?

在 Package.swift 中,将目标添加到库中的目标数组与将目标添加到依赖项数组之间有什么区别。

在第一个示例中,“Helpers”被添加为“MySwiftPackage”目标的依赖项。

let package = Package(
    name: "MyTestPackage",
    products: [
        .library(
            name: "MyTestPackage",
            targets: ["MyTestPackage"]),
        .library(
            name: "Helper",
            targets: ["Helper"]),
    ],
    dependencies: [
    ],
    targets: [
        .target(
            name: "MyTestPackage",
            dependencies: ["Helper"]), // <---- 'Helper' defined as dependency
        .target(
            name: "Helper",
            dependencies: []),
    ]
)
Run Code Online (Sandbox Code Playgroud)

在下一个示例中,“Helper”被添加为“MySwiftPackage”库中的另一个目标。

let package = Package(
        name: "MyTestPackage",
        products: [
            .library(
                name: "MyTestPackage",
                targets: ["MyTestPackage","Helper",]), // <-- 'Helper' defined in targets
            .library(
                name: "Helper",
                targets: ["Helper"]),
        ],
        dependencies: [
        ],
        targets: [
            .target(
                name: "MyTestPackage", …
Run Code Online (Sandbox Code Playgroud)

dependencies swift swift-package-manager swift-package

6
推荐指数
1
解决办法
1771
查看次数

Swift UIKit Joint - 如何在处理发布者事件时重新加载表格视图?

使用组合和 UIKit,当 viewModel 中包含的数组发生更改时,我尝试更新我的表视图。我的表视图的数据源是单独的,因为我想重用该文件(不同的对象都有一个名称 var,因此表视图将显示名称列表)。

视图模型:

class ViewModel {
  @Published var items = [ItemViewModel]()
  let service = NetworkService()

  init() {
    fetchItems()
  }
    
  func fetchItems() {
    service.fetchItems { items in {
    self.items = items.map { ItemViewModel($0) }
  }
}
Run Code Online (Sandbox Code Playgroud)

数据源:

class GenericDataSource: UITableViewDataSource {
   var list = [String]()

   func setList(_ list: [String]) {
       self.list = list
   }

  // then the usual tableView datasource boilerplate
}
Run Code Online (Sandbox Code Playgroud)

视图控制器:

class ViewController: UIViewController {
  let viewModel = ViewModel()
  let tableDataSouce = GenericDataSource()
  var subscriptions = …
Run Code Online (Sandbox Code Playgroud)

mvvm uikit tableview swift combine

1
推荐指数
1
解决办法
4124
查看次数