Заставьте сигнал кнопки на экране действовать как сигналы клавиатуры
Ядро Keyboard
сигналы, Keyboard.space
например, являются True
когда данная клавиша нажата и False
иначе. Я хочу дать сигнал от экранной кнопки того же свойства.
У меня есть кнопка, которая отправляет Bool
в почтовый ящик, но он всегда остается True
если я не отправлю другое сообщение, но не смогу найти чистый способ сделать это после того, как использую значение из сигнала, и было бы неплохо не беспокоиться, если я решу, чтобы несколько функций читали из одного и того же почтового ящика позже,
Я думаю, что может быть способ с этим Signal.foldp
но если так, я не могу найти хороший пример чего-то подобного. Что было бы наиболее удобно, если бы была функция с подписью Signal Bool -> Signal Bool
что бы преобразовать сигнал в тот, который послал False
после каждого True
отправлено.
1 ответ
Вы можете использовать что-то вроде:
Signal.dropRepeats <| Time.since Time.millisecond <| yourMailbox.signal
но желательно использовать архитектуру вяза и просто думать с точки зрения действий, а не опускаться до такого низкого уровня.