Created
October 15, 2016 19:28
-
-
Save mindbat/7afc23cad8da000e4b26de55986d4eaf to your computer and use it in GitHub Desktop.
Elm Day 2: Mouse Position
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import Html exposing (Html, text, div) | |
import Html.App as App | |
import Mouse exposing (..) | |
main = App.program { init = init, | |
view = view, update = update, subscriptions = subscriptions } | |
-- Model | |
type alias Model = { x: Int, y: Int } | |
initialModel : Model | |
initialModel = { x = 0, y = 0 } | |
init = (initialModel, Cmd.none) | |
-- Update | |
type Msg = Position Int Int | |
update: Msg -> Model -> (Model, Cmd a) | |
update msg model = case msg of | |
Position x y -> ({model | x = x, y = y}, Cmd.none) | |
-- Subscriptions | |
subscriptions: Model -> Sub Msg | |
subscriptions model = Mouse.moves(\{x, y} -> Position x y) | |
-- View | |
-- view: Model -> Html div | |
view model = div [] [text (toString model)] | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I needed to remove the Html.App import (line #2) and change App.program to Html.program (line #5) to run on 0.18