2016-05-17 1 views
1

subscriptionsを0.17に慣れさせるために、Mouse.clicksを購読してModelを1つインクリメントする単純なアプリケーションを取得しようとしています。Elm 0.17 Simple Mouse.clicksの例

現時点では、アプリに次のような苦情があります。

{ ... 
    , subscriptions : Float -> Sub Msg 
    , update : Msg -> Float -> (Float, Cmd Msg) 
    , view : Float -> Html Msg 
} 

をしかし、それは次のとおりです:

機能programは、引数があることを期待しているこれで

{ ... 
    , subscriptions : (Msg -> Position -> a) -> Sub a 
    , update : Msg -> number -> (number, Cmd b) 
    , view : c -> Html d 
} 

すべてのヘルプははるかに高く評価されるだろう。

import Html exposing (Html, text, div) 
import Html.App as Html 
import Mouse exposing (..) 

main = 
    Html.program 
    { init = init 
    , view = view 
    , update = update 
    , subscriptions = subscriptions 
    } 

-- MODEL 

type alias Model = Int 

init : (Model, Cmd Msg) 
init = 
    (0, Cmd.none) 

-- UPDATE 

type Msg 
    = Click 

update msg model = 
    case msg of 
    Click -> 
     (model + 1 , Cmd.none) 

-- SUBSCRIPTIONS 

subscriptions model = 
    Mouse.clicks (model Click) 

-- VIEW 

view model = 
    Html.text (toString model) 

答えて

1

問題はsubscriptionsの機能にあります。このように設定する必要があります:

subscriptions model = 
    Mouse.clicks (\_ -> Click) 
+0

ありがとうございます。にスポット! –

関連する問題