This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-05-31
Channels
- # admin-announcements (4)
- # alda (3)
- # aws (1)
- # beginners (2)
- # boot (33)
- # braid-chat (4)
- # braveandtrue (20)
- # cider (52)
- # cljs-dev (13)
- # cljsrn (55)
- # clojure (111)
- # clojure-belgium (4)
- # clojure-brasil (6)
- # clojure-dusseldorf (1)
- # clojure-greece (116)
- # clojure-mexico (1)
- # clojure-nl (3)
- # clojure-russia (56)
- # clojure-spec (72)
- # clojure-uk (13)
- # clojurescript (66)
- # community-development (2)
- # component (24)
- # core-async (1)
- # cursive (19)
- # datomic (27)
- # devcards (5)
- # emacs (1)
- # funcool (34)
- # hoplon (313)
- # jobs (1)
- # lein-figwheel (11)
- # luminus (5)
- # mount (30)
- # off-topic (63)
- # om (375)
- # onyx (67)
- # perun (8)
- # proton (1)
- # reagent (4)
- # rum (1)
- # specter (55)
- # spirituality-ethics (7)
- # test-check (2)
- # untangled (34)
- # yada (20)
@leov, думаю, что можно заморочиться, поселить DS жить в воркере и читать из/писать в него через апи, обмениваясь с воркером только транзакционными векторами/мапами и результатами чтения
когда дойдут руки - я так хочу на мобилочке делать: поселить DS в отдельный js контекст со своим тредом, и ходить в него через этого чувака: https://github.com/robbiehanson/CocoaHTTPServer
и ты ничего не выйграешь, учитывая сколько все будет (де)сериализовываться
ну и плюс сам воркер ничего особо не даст, максимум не будет мэйн трэд загружать
быстрее датаскрипт от этого не заработает
транзит достаточно быстро огромную DS бд зажимает/разжимает, нужно его проверить на application-specific результатах чтения и понять, есть ли смысл возиться и терпеть
например из того же воркера можно в localstorage писать, что, фактически, самое дорогое из датаскрипт-рилейтед операций
не уверен что в воркере можно в локалсторадж писать
там даже многое из стандартной библиотеки js не работает
вот на мобилке это конечно еще интересно)
хотя там есть и другие базы, более производительные
есть, но когда у тебя супер-секси синхронизация "датомами" с датомиком на сервере - стоит хотя бы попробовать повозиться
это само собой, попробовать всегда стоит 😉 на словах то одно, а на деле может по-другому получится)
Browser compatibility
Desktop
Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Available in workers (Yes) 37.0 (37.0)[1] No support[3] (Yes) No support[4]
[4] WebKit bug #149953
Bug 149953 - Modern IDB: WebWorker support
Status: RESOLVED FIXED
@az на какой? на воркшоп о книга? (на воркшвоп гаид примерно дня 3-4 общего времени, на книгу немного поболше... 1-2 месяца...)
http://blog.klipse.tech/clojure/2016/05/30/spec.html еще один пример clojure.spec
Мне от Нолена понравилось как он для ом-некста написал спеку https://gist.github.com/swannodette/c1444684bc2a8236634e4e110c654fe5
@artemyarulin: ты анимации использовал в RN?
в двух словах:
1. сделал rum миксин, в котором в локальный атом складываю высоту клавиатуры (0 - нет, 300 - есть).
повесил на атом воч (request render), всё как в rum/local.
использую его во вьюхе для marginBottom.
Всё пучком, оно работает, но слишком резко высоту меняет.
2. положил в тот атом не 0/300, а AnimatedValue(0).
и не swap!aя/reset!ая атома вызываю анимацию на keyboardWillShow/keyboardWillHide.
В итоге анимация работает, атом не меняется, рендер не
вызывается.
Магия, не могу понять, как теперь жить и во что верить
@potapenko: вроде в курсе анимаций в RN
@misha: я до конца тоже не понимаю, но что то вроде того)
у меня вот в атоме локальном есть AnimatedValue.
Потом я вызываю на нем и Animated.timing
насколько я понимаю анимация через setNativeProps работает
@savelichalex: а скажи, как завернуть спринг анимацию в тайминг? сделал я
(.start (.spring Animated (new AnimatedValue 0) #js {:toValue 500 :friction 6})))
а теперь хочу её медленнее запустить. что делать?а, ну это да
просто нужно иногда свапать его
вообще, только что прикрутил https://github.com/oblador/react-native-animatable может и не пригодится в тайминг заворачивать
Animated.parallel([
Animated.spring(this._moveAnimationValue, {
toValue: 100
}),
Animated.timing(this._opacityAnimationValue, {
toValue: 0,
duration: 200
})
]).start()
@misha: Неа, анимация не знаю
лол тут столько жс'а - срочно нужно в кложу завернуть всё это, чтобы нормально хэшмапами описывать
да там много что надо обернуть) еще бы PanResponder тоже завернуть)
@misha: да мне надо свапать когда пропсы новые приходят чтобы сбросить начальное значение для анимашки)
анимации в RN - на датабиндингах нахачены: https://www.youtube.com/watch?v=xtqUJVqpKNo&feature=youtu.be&t=778
https://clojurians.slack.com/archives/clojure-russia/p1464434945002932 @maxp: https://github.com/nathanmarz/specter#examples умеет апдейдить элемент коллекции по условию