Fork me on GitHub
#clojure-russia
<
2017-12-07
>
igrishaev08:12:13

Коллеги, я сегодня планирую постримить Кложу в 18.00 по МСК (если все пойдет как надо). Вот эвент: https://www.youtube.com/watch?v=JtKmeTZNT7w

ponimas09:12:46

запись будет?

ponimas09:12:54

а то не смогу посмотреть (

igrishaev09:12:30

она автоматом будет

achikin14:12:27

Такой вопрос: вот у нас есть reagent и в нем есть cursor, которым можно подписаться скажем на какой-то ключ в мапе. И когда я использую курсор в компоненте - компонент перерисовывается только когда этот ключ из мапы меняется.

achikin14:12:01

А еще у нас есть re-frame и там есть subscription. И я думал что subscription работает так же как курсор в реагенте.

achikin14:12:28

Но похоже что это не так.

achikin14:12:46

У меня есть некий мап, из которого рендерится форма и есть сабскрипшены, которые подписаны на ключи из этого мапа.

achikin14:12:02

Так вот я вижу, что когда один из ключей меняется -перерисовывается вся форма.

achikin14:12:26

Это заметно на тяжелых компонентах типа google map - там начинает моргать маркер при перерисовке.

achikin14:12:20

Вопрос: можно ли делать сабскрипшены в re-frame так, чтобы они работали как курсоры в reagent?

Oleh K.19:12:47

Нужно подписываться не в форме, а в элементе формы, которому этот subscription нужен. По-моему так.

achikin14:12:22

Короче надо идти читать сорцы.

dottedmag20:12:09

Господа, а как вообще отлаживать такое и понять что вообще случилось? Есть некий foo.cljs, в котором

(ns foo (:require [bar :refer [baz]])) (defn runme [] (baz))`.

dottedmag20:12:58

Запускаю я фигвил, а в консоли браузера Uncaught ReferenceError: bar is not defined at foo$runme (runme.js:12)

dottedmag20:12:27

Как так require ничего не сказав зафейлился?

dottedmag20:12:09

Ух, если сделать hard reload, то ошибка пропадает. Каждый раз делать hard reload при НЕХ?