Получите значение Int из Signal Int
Я сталкиваюсь с проблемой при принятии Int
ценность из Window.dimensions
Вернусь Вал - Signal Int
,
view : Signal.Address Action -> Model -> Html
view address model =
let wx = Signal.map fst Window.dimensions
wy = Signal.map snd Window.dimensions
in fromElement <| container wx wy middle <| toElement 100 100 <|
div []
[ button [ onClick address Decrement ] [text "-"]
]
Эта строка, wx = Signal.map fst Window.dimensions
получить window
X-координаты контейнера выдают ошибку как,
Type mismatch between the following types on line 30, column 31 to 33:
Signal.Signal In
Int
It is related to the following expression:
wx
1 ответ
Решение
Window.dimensions
это Signal (Int, Int)
, Нанесение на карту с помощью fst
или же snd
даст вам Signal Int
который вы не можете просто получить "значение из".
Ваш view
не должен иметь Signal
в этом вообще. Это должно просто принять некоторое состояние и вернуть некоторые Html
, Если вы хотите сделать container
это те же размеры, что и экран, лучше иметь view
Функция принимает ширину / высоту, а затем сопоставить вашу функцию просмотра на Window.dimensions
, Вы можете использовать это в качестве примера.