问题标签 [rxdatasources]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
75 浏览

ios - 如何解决气旋复杂性?- RxDataSource RxSwift - SwiftLint

当我使用 RxDataSource 时,我遇到了这样的警告“违反循环复杂度:函数的复杂度应为 10 或更低:当前复杂度等于 14 (cyclomatic_complexity)”。

我的代码结构是这样的:

在此处输入图像描述

谁能帮我解决这个问题?非常感谢。

0 投票
1 回答
63 浏览

ios - 使用 RxDatasources 实现多个部分

我正在尝试使用 RxDatasources 制作多个部分(实际上是两个部分)。通常只有一个部分,我会这样:

截面型号:

然后是实际模型:

我会像这样使用它(在视图控制器中):

但是我将如何处理多个部分,使用不同类型的模型/单元?

0 投票
1 回答
188 浏览

ios - 如何使用 RxDatasources 为 tableView 提供自定义页眉/页脚

我真的无法在文档或其他地方找到它,但是有没有办法使用 RxDatasources 提供从 nib 加载的自定义页眉和页脚?

例如,我正在使这样的单元格出列:

我看不到有什么东西configureCell(除了titleForHeaderInSection)让我出列/配置可重用的页眉/页脚(标准viewForHeaderInSectionviewForFooterInSection委托方法提供的东西)。

0 投票
2 回答
37 浏览

swift - Swift枚举符合可识别:类型不符合可识别协议

我有一个带有关联值的枚举,我想将其用作 RxDataSources 中的一个项目。我尝试通过将其符合 Hashable 来使其符合可识别性,如下所示

我通过简单地为每个案例分配一个 Int 值来实现哈希函数。然后为了符合可识别,我添加了一个返回hashValue的id属性。这编译得很好。

现在,当我尝试使用它为节模型声明类型别名时,如下所示

它确实编译并抛出错误,Type 'DriverHubWidget' does not conform to protocol 'IdentifiableType'

我不明白为什么它不起作用,当枚举符合 Hashable 和 Identifiable 时它编译得很好,但是当使用时,一致性以某种方式无效是不是因为枚举的关联值不是 Hashable?

0 投票
1 回答
11 浏览

ios - 如何正确使用 RxDataSources 重新加载 UITableView?

我正在尝试构建一个 tableView 女巫有许多带有按钮的单元格,我想要做的是当我单击单元格中的按钮时,单元格应该转到表格的底部,这是我的代码:

但是,因为我在闭包中发送了 onNext 事件configureCell,所以收到了警告:

⚠️ 检测到重入异常。

调试:要调试此问题,您可以在 /Users/me/Desktop/MyProject/Pods/RxSwift/RxSwift/Rx.swift:96 中设置断点并观察调用堆栈。问题:这种行为破坏了可观察序列语法。next (error | completed)? 这种行为破坏了语法,因为序列事件之间存在重叠。可观察序列试图在前一个事件的发送完成之前发送一个事件。解释:这可能意味着您的代码中存在某种意外的循环依赖,或者系统未按预期方式运行。补救措施:如果这是预期的行为,则可以通过添加.observe(on:MainScheduler.asyncInstance) 或以其他方式将序列事件排入队列来抑制此消息。

屏幕上的动作不是我想要的。我应该怎么办?如何正确重新加载 TableView?