CXExtensions 0.0.1-beta.4

CXExtensions 0.0.1-beta.4

luoxiu 维护。



 
依赖项
CXFoundation~> 0.0.1-beta.5
CXCompatible~> 0.0.1-beta.4
 

CXExtensions 0.0.1-beta.4

  • 作者
  • Quentin Jin

CXExtensions

release install platform license dicord

CXExtensions 是一个对 CombineCombineX 有用的扩展集合。

API

发布者

IgnoreError

忽略上游错误并完成。

// Output: (data: Data, response: URLResponse), Failure: URLError
let upstream = URLSession.shared.cx.dataTaskPublisher(for: url)

// Output: (data: Data, response: URLResponse), Failure: Never
let pub = upstream.ignoreError()

Cancellable

延迟自动取消

延迟后自动取消。

let delayedCancel = upstream
    .sink { o in
    }
    .cancel(after .second(1), scheduler: mainScheduler)

安装

Swift包管理器

dependencies.append(
    .package(url: "https://github.com/cx-org/CXExtensions", .branch("master"))
)

CocoaPods

pod 'CXExtensions', :git => 'https://github.com/cx-org/CXExtensions.git', :branch => 'master'

Carthage

github "cx-org/CXExtensions" "master"

与Combine一起使用

您可以通过将target的构建配置传递给USE_COMBINE来将底层的依赖项改为Combine。例如,如果您正在使用CocoaPods,可以像下面这样修改您的podfile

post_install do |installer|
    installer.pods_project.targets.each do |target|
        if target.name == 'CXExtensions'
            target.build_configurations.each do |config|
                config.build_settings['OTHER_SWIFT_FLAGS'] = '-DUSE_COMBINE'
            end
        end
    end
end

如果您正在使用Carthage,您应该能够使用XCODE_XCCONFIG_FILE来做这件事。