-
1 votesanswersviews
在LINQ分组,有2个属性
这是一个已经被问到的问题,但that question只能使用2个属性,我需要使用3个属性,所以我复制粘贴大部分文本 . 我们假设我们有一个类似的课程 class Person { internal int PersonID; internal string car ; internal string friend ; } 现在我有一个这个类的列表:列出人员; 现在,此列表可以具有多个相... -
237 votesanswersviews
ReactiveCocoa vs RxSwift - 优点和缺点?
所以现在有了swift,ReactiveCocoa人已经在3.0版本中为swift重写了它 此外,还有另一个名为RxSwift的项目 . 我想知道人们是否可以添加关于两个框架的设计/ api /哲学的差异的信息(请在SO的精神中,坚持真实的事情,而不是关于哪个是“最佳”的意见) [注意StackOverflow mods:这个问题有确切的答案,答案是两个框架之间的差异 . 我认为这也是SO的主题 ... -
2 votesanswersviews
在RxSwift中RACCommand的等价物是什么?
我有一个视图和一个视图模型 . 视图包含一个按钮,每次用户按下它时,我都希望通知视图模型 . 我还希望在第一个视图模型获得事件时通知第二个视图模型 . 因此,tap事件将按如下方式传播: Button -> ViewModel1 -> ViewModel2 我可以通过将 button.rx_tap 绑定到 viewModel1.onButtonTapped() 来设计它,但是因为我希... -
1 votesanswersviews
如何使用RxSwift手动发出事件(即创建一个EventEmitter)?
如何使用RxSwift实现事件 Launcher ? (可以发出由订阅它的其他对象使用的数据的对象 . ) 在浏览了Rx文档和示例之后,我觉得自己是一个完全白痴,并且仍然非常困惑如何从Observers手动发出事件到Observables . 我的理解是我们有一些Observable可以向所有订阅Observable的观察者发出带有数据的事件 . 但是,我对如何在Swift中实现它没有任何想法 .... -
1 votesanswersviews
RxSwift:防止多个网络请求
我目前遇到使用RxSwift Observables时执行多个网络请求的问题 . 我知道如果一个人创建了一个冷可观察对象并且它有多个观察者,那么observable将在每次订阅时执行它的块 . 我已经尝试创建一个执行网络请求的共享订阅observable,并且会通知多个订阅者结果 . 以下是我的尝试 . Sequence of events 使用uibutton的tap事件创建视图模型 在... -
1 votesanswersviews
如何在RxSwift中触发`never`操作符的事件
当用户点击按钮时,我的viewModel需要执行一些任务,例如辞职第一响应者(键盘) . 我认为最好的方法是在我的ViewModel中设置一个触发器,ViewController将会观察到 . 似乎是一个使用 observable output 的好时机,它不会像这样发出任何值: var resignFirstResponder = Observable<Any>.never() ... -
0 votesanswersviews
在RxSwift中组合Observable
我需要上传图片,并在按钮点击上将项目保存到数据库 . 我不确定我是否采取了正确的方法 . 我应该分开上传请求吗?因为它的所有异步,所以在 do(onNext:) operator 中发出事件是否安全?我还需要考虑错误,我唯一能做的就是保存项目 . 我对任何错误传播都很感兴趣 . 此外,保存项目是一个冷可观察,所以我需要从视图模型订阅它以实际执行请求吗?它只返回 Observable<Vo... -
0 votesanswersviews
regex自己或用'else'字的花括号
我正在尝试为代码计数工具 cloc 编写一些自定义定义,但不幸的是正则表达式不是我的强项 . 我正在努力编写一个正则表达式,它将匹配在 { 或 } 之前和/或之后只包含空格的行 我还需要匹配包含空格的行和 } ,后跟关键字 else 即在以下样本中: 1 if ( some condition ) { 2 do something 3 } else if ( some other co... -
1 votesanswersviews
将已变换的事件从Observable直接转发到BehaviourSubject
我对Rx和RxSwift真的很陌生,而且我正在尝试通过阅读和同时学习来学习,所以也许这个问题会让你发笑 . 请原谅我:P 我有这个架构: MatchView -> MatchViewModel -> P2PSession -> MCSession+Rx 我已经对 MCSession 进行了Reactive扩展,以使会话状态更改成为可观察的: var didChangeState... -
4 votesanswersviews
在ViewController中单元测试RxSwift可观察
我'm quite new to RxSwift. I have a view controller that has a typeahead/autocomplete feature (i.e., user types in a UITextField and as soon as they enter at least 2 characters a network request is mad... -
0 votesanswersviews
RxSwift:将Single的结果传递给PublishSubject Connectable Observable
我有一个网络请求,其结果必须传播给多个订阅者 . 我的API层实现为 Single observables的源,其中每个 Single 代表网络请求的结果 . 但是,我想使用 Connectable Observable 来实际触发事件: 当任何观察者触发 .connect() 方法时 Single 被调用 Single 的结果通过管道传送到 PublishSubject onN... -
0 votesanswersviews
RxSwift flatMapLatest没有处理以前的observable
我正在使用RxSwift Playground:https://github.com/ReactiveX/RxSwift 我实现了以下示例代码来建模一个简单的异步任务,将一个Observable of Int转换为一个Observable of String: let pubishSubject = PublishSubject<Int>() pubishSubject.asObser... -
4 votesanswersviews
使用RxSwift和Moya处理重新身份验证
我有一个项目,我正在使用带有RxSwift扩展的Moya . 简单的用例工作正常,我能够以Observables的形式提出请求并获得响应 . public func test() -> Observable<Response> { return provider .request(.test) .retry(5) } 然后我可以订阅observable并... -
12 votesanswersviews
使用RxSwift观察UITextField.editing
我想观察属性 UITextfield.editing . 我正在使用此代码: self.money.rx_observe(Bool.self, "editing").subscribeNext { (value) in print("") }.addDisposableTo(disposeBag) 但是在运行过程中,它只执行一次 . 请问我该如何... -
2 votesanswersviews
如果以前找到其他字符,则匹配字符
我想在一个正则表达式中匹配c样式注释 . 对于前者 int i /* ABC 123 */ int i // ABC 123 我能写的是 (.*?)(?:/\\*|//)\\s*(ABC)\\s*(\\d)+\\s* 这只是匹配 int i /* ABC 123 or int i // ABC 123 在正则表达式中是否有一种方法我告诉我是否在我的字符串中有/ 然后 /应该在那里,如果它以... -
1 votesanswersviews
在某些观察者完成/处置之后,让主体“倾听”
我想将多个observable连接到一个共同的Subject . 可以处置可观察量,并且将创建新的可观察量并由同一主体订阅 . 我创建并删除了几个自定义UIViews,每个UIViews都包含发送到同一Subject的Observers . 例如:在myView1中,我有: myButton1.rx.tap .subscribe(sameViewModel.subject) .disp... -
2 votesanswersviews
如何正确地将第三方库委托转换为RxSwift Observable
我有一个案例,我正在使用第三方库,我想把它变成一个Observable . 适当地,库是围绕代表设计的,正如人们所期望的那样,我正在包装它 . 该库执行异步操作,并在完成后使用结果调用它的委托 . 我绝对想利用observable的 cold 性质,只有在有人订阅时才开始操作 . 我有一个有效的解决方案,我只是非常有缺陷,我错过了对 RxSwift 的一些重要理解,或者可能有一种更简单的方法来实现... -
1 votesanswersviews
RxSwift如何只订阅一次可观察的一次?
我想订阅一个observable,但在某种逻辑上,我会重新订阅它 . 如果我不想为它编写一些特殊的逻辑,那么在添加新订阅时如何处理最后一个订阅?或者,当我订阅它时,我怎么知道这个observable是否已经订阅了? -
7 votesanswersviews
正则表达式匹配CSS类名称
我正在尝试编写一个匹配有效的CSS类名结构的正则表达式 . 到目前为止我有这个: $pattern = "([A-Za-z]*\.[A-Za-z]+\s*{)"; $regex = preg_match_all($pattern, $html, $matches); 但是,类名可以采用我的正则表达式不匹配的以下格式: p.my_class{ } p.thisclas45{ ... -
1 votesanswersviews
regex如何匹配单个元素(<>)中的重复属性名称
我正在尝试使用正则表达式来搜索具有重复样式或类属性的元素 . 我只能获得匹配的行,但我想更多地定义与实际元素的匹配(在<>内) . 有人有例子吗?下面是一些HTML,搜索应该只匹配顶部div,因为它有两个样式属性 . <div style="width:100%;" style="height:100%;"> <div clas... -
0 votesanswersviews
匹配一个字符串,前面没有空格
我有一个正则表达式: (struct|class|protocol)\s(?!(func|DB|DC|DM))[^\n\r]+\{ 基本上匹配任何没有前缀为DC,DB或DM的 class , struct 或 protocol 定义 . 这很好,但我们希望它只匹配顶级声明 . 为了实现这一点,我试图只匹配在它们之前不包含空格的声明,即 class ThisClassMatches { // thi... -
1 votesanswersviews
具有模式匹配的递归正则表达式仅在递归之前的匹配开始时匹配?
我正在尝试找到匹配的括号,其中还有一些在中间 . 我有以下正则表达式,它匹配括号以找到与之关联的那个 . 我现在需要的是它还搜索前缀,例如“Test” . 然而,它会重复整个模式 . 我不能简单地在模式的开头包含“测试” . 我还只希望它在前缀以“Test”开头时匹配,而不仅仅匹配任何括号 . 我想用其他东西替换"Test( ... )",所以最好是它是一个模式,所以我可以使用... -
219 votesanswersviews
匹配空格但不匹配换行符
我有时想要匹配空格而不是换行符 . 到目前为止,我一直在诉诸 [ \t] . 有一种不那么尴尬的方式吗? -
0 votesanswersviews
我如何获得最近添加的Swiftlint规则
我有最新版本的Swiftlint(通过brew) . 当我检查github时,我发现自发布以来他们已经添加了一堆规则,甚至几天前也是如此 . 如何将这些规则放到我的Mac上?我是否必须卸载我的版本并重新安装相同的版本? (甚至会获得新规则吗?)我是否必须从github下载zip? -
2 votesanswersviews
Vim:匹配大括号之间的空格,但不匹配新行
在vim中,我试图在 ( 之后和 .coffee 文件中的 ) 之前突出显示空格 . 所以在 ( foo = true, bar = false ) 中,该方法会在 foo 之前和 false 之后突出显示 space . 这就是我所拥有的: highlight BraceWhiteSpace ctermbg=red ctermfg=white guibg=#592929 fun! Update... -
1 votesanswersviews
正则表达式swiftlint自定义规则
我在swiftlint程序中创建自定义规则 .这是我的参考:https://github.com/realm/SwiftLint 我想添加一个自定义规则,我必须在','之后检测2个或更多空格 . 所以我添加了这个规则 . comma_space_rule: regex: ",[ ]{2,}" message: "Expected only one space ... -
16 votesanswersviews
SwiftLint:排除特定规则的文件
我想在我的.swiftlint.yml文件中做这样的事情: force_cast: severity: warning # explicitly excluded: - Dog.swift 我有这个代码,我不喜欢我得到的force_try警告: let cell = tableView.dequeueReusableCellWithIdentifier(Constants.dog... -
1 votesanswersviews
preg_match_all多行不起作用
我有一个包含换行符的字符串 mystring : when HTTP_REQUEST { switch -glob [string tolower [HTTP::host]] { "sub1.sub.dom" { pool /networkname/hostname_80 } "sub2.sub.dom" { pool... -
0 votesanswersviews
用于编译指示标记的SwiftLint规则
我正在尝试实现自定义swiftlint规则来跟踪“// MARK:”小于两个新行之前的时间 . 我在正则表达方面不擅长 . 这是我的规则: custom_rules: pragma_mark: name: "Wrong pagma mark format" regex: "([^\n\n]?\/\/ MARK:)" message: "Please... -
3 votesanswersviews
在Swift中使用参数上下文之外的运算符函数
因此,在声明闭包时,我们可以得到相当抽象的东西 . 例如,我们可以使用内联闭包进行排序,如: var arr = sort(["a", "b", "c"], { $0 > $1 }) // Shows ["c", "b", "a"] arr 然后可以将其简化为这样的运算符...