Предположим, что у нас есть эта сетка со значениями, которые могут быть 0 или 1:
(def grid [[1 0 1]
[1 0 0]
[1 0 1]])
Теперь я хочу преобразовать grid
в формат html Hiccup, используя понимание списка:
(defn cell-component [is-it-1 key]
^{:key key} [:td (if (= is-it-1 1) {:class "is-it-1"})])
(defn grid-html []
([:table
[:tbody
(for [row grid]
^{:key row} [:tr
(for [cell row]
(cell-component cell how-i-can-generate-a-index?))])]]))
Таблица сгенерирована правильно, но у меня нет идей, как сделать unique index
для моего td
. какой how-i-can-generate-a-index?
должен быть?
[:table ...]
вgrid-html
избыточны (и код не будет работать с ними, поскольку они преобразуются в вызов функции, а вам просто нужно вернуть компонент:(defn grid-html [] [:table [:tbody ... ]])
) - person Aleph Aleph   schedule 03.12.2016map-indexed
вместо for. - person ClojureMostly   schedule 03.12.2016