Binding.scala: получить текущее значение привязки.
Кажется, невозможно получить текущее значение Binding
как мы можем сделать для Var
(используя метод value
). Я посмотрел на источник, и этот метод объявлен как частный для Binding
класс, в то время как это публично для Var
или для Binding.Constant
классы. Есть ли какая-либо причина сделать его частным в Binding
дело? Знаете ли вы, что есть еще один способ добиться этого для Binding
?
Просто для краткого описания контекста, мой пример использования следующий: у меня есть сложный объект внутри Var
и из этого Вар, я получаю несколько Binding
представляет списки простых объектов. Тогда я использую эти Binding
визуализировать HTML-таблицы в методах @dom. Теперь я хотел бы выполнить некоторый последовательный поиск в данных, отображаемых в таблице (без необходимости извлекать их снова из оригинала Var
объект) Итак, в основном, я хотел бы получить текущее значение Binding
раньше показывал мою таблицу, чтобы выполнить поиск.
В настоящее время я могу думать только о том, чтобы использовать Var
вместо Binding
для моих производных объектов, а затем использовать отслеживаемое выражение привязки для обновления производного Var
когда источник Var
изменения. Но это делает код гораздо менее лаконичным, и у меня есть ощущение, что это добавит некоторой производительности. У вас есть какие-нибудь идеи, чтобы сделать это лучше?
Заранее спасибо за любой ответ!
1 ответ
Вам может понадобиться findMapM
(где M
является Binding
, F
является List
или же Vector
) или другие последовательные функции в Scalaz. Смотрите Скаладок.