Size: a a a

2020 March 23

VC

Vova Chernyshov in RxPM
да
источник

L

Leo in RxPM
Буду ждать PR
источник

DG

Dmitriy Gorbunov in RxPM
Reaktive стабильный уже?
источник

VC

Vova Chernyshov in RxPM
я уже закочил порт на reaktive, думаю завтра драфт будет на github
источник

VC

Vova Chernyshov in RxPM
Dmitriy Gorbunov
Reaktive стабильный уже?
уже 1.1.12 версия
источник

DG

Dmitriy Gorbunov in RxPM
Vova Chernyshov
я сейчас пробую портировать RxPm на Reaktive и когда начал тестировать sample то у меня начало падать, причом не всегда
Портируешь приложение на мпп  или по фану?
источник

VC

Vova Chernyshov in RxPM
задумка сделать RxPm для MPP проектов, пока по фану
источник

L

Leo in RxPM
Главный вопрос: почему не flow?
источник

L

Leo in RxPM
Я собираюсь этим путем идти
источник

DG

Dmitriy Gorbunov in RxPM
Leo
Главный вопрос: почему не flow?
На флоу я уже портирую, но походу буду делать редизайн, чтобы учесть ошибки
источник

L

Leo in RxPM
Ну вот сразу и mpp бесплатно)
источник

VC

Vova Chernyshov in RxPM
пробовал flow, но что то мне не пошло, что касаеться ios
источник

L

Leo in RxPM
Интересно послушать про изменения грядушие)
источник

DG

Dmitriy Gorbunov in RxPM
Vova Chernyshov
пробовал flow, но что то мне не пошло, что касаеться ios
Корутинки из иос не запустить?
источник

VC

Vova Chernyshov in RxPM
я пробовал делать аналоги стейтов и команд на Flow, что то получилось но виглядит не очеть
источник

VC

Vova Chernyshov in RxPM
Dmitriy Gorbunov
Корутинки из иос не запустить?
на сколько я понял сейчас нету поддержки suspend функции в KotlinNative
источник

VC

Vova Chernyshov in RxPM
у меня получилось так:

class State<T>(private val scope: CoroutineScope, initialValue: T? = null) {

   private val channel =
       initialValue?.let { ConflatedBroadcastChannel(it) } ?: ConflatedBroadcastChannel()

   var value: T
       get() = channel.value
       set(value) {
           scope.launch { channel.send(value) }
       }

   val flow: Flow<T>
       get() = channel.asFlow()
}
источник

VC

Vova Chernyshov in RxPM
fun <T> State<T>.bindOnUi(observer: (T) -> Unit) {
   bind(CoroutineScope(Dispatchers.UI), observer)
}

код на стороне iOS:

viewModel.counter.bindOnUi(observer: { value in
   self.counterLabel.text = (value as? KotlinInt)?.stringValue
})
источник

DG

Dmitriy Gorbunov in RxPM
Vova Chernyshov
fun <T> State<T>.bindOnUi(observer: (T) -> Unit) {
   bind(CoroutineScope(Dispatchers.UI), observer)
}

код на стороне iOS:

viewModel.counter.bindOnUi(observer: { value in
   self.counterLabel.text = (value as? KotlinInt)?.stringValue
})
из свифта до сих пор не понимает тип?
источник

VC

Vova Chernyshov in RxPM
в такой реализации приходит 'Any?'
источник