В purescript-dom, как вы переходите от узла к конкретному типу элемента?
Я думаю, что мне может не хватать ключевой функции в purescript-dom
модуль для преобразования из узла в определенный тип элемента. Например, если у меня есть Event
Я могу использовать DOM.Events.Events.target, чтобы получить узел, но кажется, что единственный способ получить определенный элемент - unsafeCoerce
например,
import DOM.Event.Event (target)
import DOM.HTML.HTMLInputElement (value)
eval (InputChange event next) = do
-- Get the value of the HTMLInputElement assuming it is one
v <- H.liftEff $ value (unsafeCoerce $ target event)
H.liftEff $ log "Input field change"
H.liftEff $ log v
pure next
Есть ли лучший способ перейти от узла к типу элемента?
1 ответ
Решение
Идея состоит в том, чтобы использовать toForeign
а потом readHTMLInputElement
когда вы хотите выгнать Node
/ тип элемента.
Хотя довольно неприятно постоянно писать такие вещи, так что purescript-dom-classy
стремится снять часть боли. А также избегая toForeign
шаг у вас будет только Maybe
иметь дело с, а не Except
read
функция вернется.