首页 文章
  • 1 votes
     answers
     views

    在LINQ分组,有2个属性

    这是一个已经被问到的问题,但that question只能使用2个属性,我需要使用3个属性,所以我复制粘贴大部分文本 . 我们假设我们有一个类似的课程 class Person { internal int PersonID; internal string car ; internal string friend ; } 现在我有一个这个类的列表:列出人员; 现在,此列表可以具有多个相...
  • 237 votes
     answers
     views

    ReactiveCocoa vs RxSwift - 优点和缺点?

    所以现在有了swift,ReactiveCocoa人已经在3.0版本中为swift重写了它 此外,还有另一个名为RxSwift的项目 . 我想知道人们是否可以添加关于两个框架的设计/ api /哲学的差异的信息(请在SO的精神中,坚持真实的事情,而不是关于哪个是“最佳”的意见) [注意StackOverflow mods:这个问题有确切的答案,答案是两个框架之间的差异 . 我认为这也是SO的主题 ...
  • 2 votes
     answers
     views

    在RxSwift中RACCommand的等价物是什么?

    我有一个视图和一个视图模型 . 视图包含一个按钮,每次用户按下它时,我都希望通知视图模型 . 我还希望在第一个视图模型获得事件时通知第二个视图模型 . 因此,tap事件将按如下方式传播: Button -> ViewModel1 -> ViewModel2 我可以通过将 button.rx_tap 绑定到 viewModel1.onButtonTapped() 来设计它,但是因为我希...
  • 1 votes
     answers
     views

    如何使用RxSwift手动发出事件(即创建一个EventEmitter)?

    如何使用RxSwift实现事件 Launcher ? (可以发出由订阅它的其他对象使用的数据的对象 . ) 在浏览了Rx文档和示例之后,我觉得自己是一个完全白痴,并且仍然非常困惑如何从Observers手动发出事件到Observables . 我的理解是我们有一些Observable可以向所有订阅Observable的观察者发出带有数据的事件 . 但是,我对如何在Swift中实现它没有任何想法 ....
  • 1 votes
     answers
     views

    RxSwift:防止多个网络请求

    我目前遇到使用RxSwift Observables时执行多个网络请求的问题 . 我知道如果一个人创建了一个冷可观察对象并且它有多个观察者,那么observable将在每次订阅时执行它的块 . 我已经尝试创建一个执行网络请求的共享订阅observable,并且会通知多个订阅者结果 . 以下是我的尝试 . Sequence of events 使用uibutton的tap事件创建视图模型 在...
  • 1 votes
     answers
     views

    如何在RxSwift中触发`never`操作符的事件

    当用户点击按钮时,我的viewModel需要执行一些任务,例如辞职第一响应者(键盘) . 我认为最好的方法是在我的ViewModel中设置一个触发器,ViewController将会观察到 . 似乎是一个使用 observable output 的好时机,它不会像这样发出任何值: var resignFirstResponder = Observable<Any>.never() ...
  • 0 votes
     answers
     views

    在RxSwift中组合Observable

    我需要上传图片,并在按钮点击上将项目保存到数据库 . 我不确定我是否采取了正确的方法 . 我应该分开上传请求吗?因为它的所有异步,所以在 do(onNext:) operator 中发出事件是否安全?我还需要考虑错误,我唯一能做的就是保存项目 . 我对任何错误传播都很感兴趣 . 此外,保存项目是一个冷可观察,所以我需要从视图模型订阅它以实际执行请求吗?它只返回 Observable<Vo...
  • 0 votes
     answers
     views

    regex自己或用'else'字的花括号

    我正在尝试为代码计数工具 cloc 编写一些自定义定义,但不幸的是正则表达式不是我的强项 . 我正在努力编写一个正则表达式,它将匹配在 { 或 } 之前和/或之后只包含空格的行 我还需要匹配包含空格的行和 } ,后跟关键字 else 即在以下样本中: 1 if ( some condition ) { 2 do something 3 } else if ( some other co...
  • 1 votes
     answers
     views

    将已变换的事件从Observable直接转发到BehaviourSubject

    我对Rx和RxSwift真的很陌生,而且我正在尝试通过阅读和同时学习来学习,所以也许这个问题会让你发笑 . 请原谅我:P 我有这个架构: MatchView -> MatchViewModel -> P2PSession -> MCSession+Rx 我已经对 MCSession 进行了Reactive扩展,以使会话状态更改成为可观察的: var didChangeState...
  • 4 votes
     answers
     views

    在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 votes
     answers
     views

    RxSwift:将Single的结果传递给PublishSubject Connectable Observable

    我有一个网络请求,其结果必须传播给多个订阅者 . 我的API层实现为 Single observables的源,其中每个 Single 代表网络请求的结果 . 但是,我想使用 Connectable Observable 来实际触发事件: 当任何观察者触发 .connect() 方法时 Single 被调用 Single 的结果通过管道传送到 PublishSubject onN...
  • 0 votes
     answers
     views

    RxSwift flatMapLatest没有处理以前的observable

    我正在使用RxSwift Playground:https://github.com/ReactiveX/RxSwift 我实现了以下示例代码来建模一个简单的异步任务,将一个Observable of Int转换为一个Observable of String: let pubishSubject = PublishSubject<Int>() pubishSubject.asObser...
  • 4 votes
     answers
     views

    使用RxSwift和Moya处理重新身份验证

    我有一个项目,我正在使用带有RxSwift扩展的Moya . 简单的用例工作正常,我能够以Observables的形式提出请求并获得响应 . public func test() -> Observable<Response> { return provider .request(.test) .retry(5) } 然后我可以订阅observable并...
  • 12 votes
     answers
     views

    使用RxSwift观察UITextField.editing

    我想观察属性 UITextfield.editing . 我正在使用此代码: self.money.rx_observe(Bool.self, "editing").subscribeNext { (value) in print("") }.addDisposableTo(disposeBag) 但是在运行过程中,它只执行一次 . 请问我该如何...
  • 2 votes
     answers
     views

    如果以前找到其他字符,则匹配字符

    我想在一个正则表达式中匹配c样式注释 . 对于前者 int i /* ABC 123 */ int i // ABC 123 我能写的是 (.*?)(?:/\\*|//)\\s*(ABC)\\s*(\\d)+\\s* 这只是匹配 int i /* ABC 123 or int i // ABC 123 在正则表达式中是否有一种方法我告诉我是否在我的字符串中有/ 然后 /应该在那里,如果它以...
  • 1 votes
     answers
     views

    在某些观察者完成/处置之后,让主体“倾听”

    我想将多个observable连接到一个共同的Subject . 可以处置可观察量,并且将创建新的可观察量并由同一主体订阅 . 我创建并删除了几个自定义UIViews,每个UIViews都包含发送到同一Subject的Observers . 例如:在myView1中,我有: myButton1.rx.tap .subscribe(sameViewModel.subject) .disp...
  • 2 votes
     answers
     views

    如何正确地将第三方库委托转换为RxSwift Observable

    我有一个案例,我正在使用第三方库,我想把它变成一个Observable . 适当地,库是围绕代表设计的,正如人们所期望的那样,我正在包装它 . 该库执行异步操作,并在完成后使用结果调用它的委托 . 我绝对想利用observable的 cold 性质,只有在有人订阅时才开始操作 . 我有一个有效的解决方案,我只是非常有缺陷,我错过了对 RxSwift 的一些重要理解,或者可能有一种更简单的方法来实现...
  • 1 votes
     answers
     views

    RxSwift如何只订阅一次可观察的一次?

    我想订阅一个observable,但在某种逻辑上,我会重新订阅它 . 如果我不想为它编写一些特殊的逻辑,那么在添加新订阅时如何处理最后一个订阅?或者,当我订阅它时,我怎么知道这个observable是否已经订阅了?
  • 7 votes
     answers
     views

    正则表达式匹配CSS类名称

    我正在尝试编写一个匹配有效的CSS类名结构的正则表达式 . 到目前为止我有这个: $pattern = "([A-Za-z]*\.[A-Za-z]+\s*{)"; $regex = preg_match_all($pattern, $html, $matches); 但是,类名可以采用我的正则表达式不匹配的以下格式: p.my_class{ } p.thisclas45{ ...
  • 1 votes
     answers
     views

    regex如何匹配单个元素(<>)中的重复属性名称

    我正在尝试使用正则表达式来搜索具有重复样式或类属性的元素 . 我只能获得匹配的行,但我想更多地定义与实际元素的匹配(在&lt;&gt;内) . 有人有例子吗?下面是一些HTML,搜索应该只匹配顶部div,因为它有两个样式属性 . &lt;div style=&quot;width:100%;&quot; style=&quot;height:100%;&quot;&gt; &lt;div clas...
  • 0 votes
     answers
     views

    匹配一个字符串,前面没有空格

    我有一个正则表达式: (struct|class|protocol)\s(?!(func|DB|DC|DM))[^\n\r]+\{ 基本上匹配任何没有前缀为DC,DB或DM的 class , struct 或 protocol 定义 . 这很好,但我们希望它只匹配顶级声明 . 为了实现这一点,我试图只匹配在它们之前不包含空格的声明,即 class ThisClassMatches { // thi...
  • 1 votes
     answers
     views

    具有模式匹配的递归正则表达式仅在递归之前的匹配开始时匹配?

    我正在尝试找到匹配的括号,其中还有一些在中间 . 我有以下正则表达式,它匹配括号以找到与之关联的那个 . 我现在需要的是它还搜索前缀,例如“Test” . 然而,它会重复整个模式 . 我不能简单地在模式的开头包含“测试” . 我还只希望它在前缀以“Test”开头时匹配,而不仅仅匹配任何括号 . 我想用其他东西替换&quot;Test( ... )&quot;,所以最好是它是一个模式,所以我可以使用...
  • 219 votes
     answers
     views

    匹配空格但不匹配换行符

    我有时想要匹配空格而不是换行符 . 到目前为止,我一直在诉诸 [ \t] . 有一种不那么尴尬的方式吗?
  • 0 votes
     answers
     views

    我如何获得最近添加的Swiftlint规则

    我有最新版本的Swiftlint(通过brew) . 当我检查github时,我发现自发布以来他们已经添加了一堆规则,甚至几天前也是如此 . 如何将这些规则放到我的Mac上?我是否必须卸载我的版本并重新安装相同的版本? (甚至会获得新规则吗?)我是否必须从github下载zip?
  • 2 votes
     answers
     views

    Vim:匹配大括号之间的空格,但不匹配新行

    在vim中,我试图在 ( 之后和 .coffee 文件中的 ) 之前突出显示空格 . 所以在 ( foo = true, bar = false ) 中,该方法会在 foo 之前和 false 之后突出显示 space . 这就是我所拥有的: highlight BraceWhiteSpace ctermbg=red ctermfg=white guibg=#592929 fun! Update...
  • 1 votes
     answers
     views

    正则表达式swiftlint自定义规则

    我在swiftlint程序中创建自定义规则 .这是我的参考:https://github.com/realm/SwiftLint 我想添加一个自定义规则,我必须在','之后检测2个或更多空格 . 所以我添加了这个规则 . comma_space_rule: regex: &quot;,[ ]{2,}&quot; message: &quot;Expected only one space ...
  • 16 votes
     answers
     views

    SwiftLint:排除特定规则的文件

    我想在我的.swiftlint.yml文件中做这样的事情: force_cast: severity: warning # explicitly excluded: - Dog.swift 我有这个代码,我不喜欢我得到的force_try警告: let cell = tableView.dequeueReusableCellWithIdentifier(Constants.dog...
  • 1 votes
     answers
     views

    preg_match_all多行不起作用

    我有一个包含换行符的字符串 mystring : when HTTP_REQUEST { switch -glob [string tolower [HTTP::host]] { &quot;sub1.sub.dom&quot; { pool /networkname/hostname_80 } &quot;sub2.sub.dom&quot; { pool...
  • 0 votes
     answers
     views

    用于编译指示标记的SwiftLint规则

    我正在尝试实现自定义swiftlint规则来跟踪“// MARK:”小于两个新行之前的时间 . 我在正则表达方面不擅长 . 这是我的规则: custom_rules: pragma_mark: name: &quot;Wrong pagma mark format&quot; regex: &quot;([^\n\n]?\/\/ MARK:)&quot; message: &quot;Please...
  • 3 votes
     answers
     views

    在Swift中使用参数上下文之外的运算符函数

    因此,在声明闭包时,我们可以得到相当抽象的东西 . 例如,我们可以使用内联闭包进行排序,如: var arr = sort([&quot;a&quot;, &quot;b&quot;, &quot;c&quot;], { $0 &gt; $1 }) // Shows [&quot;c&quot;, &quot;b&quot;, &quot;a&quot;] arr 然后可以将其简化为这样的运算符...

热门问题