2017-10-29 9 views
0

にリスト要素を挿入:エルムlangは、私は、モデル内の次のタイプを持っている親コンテナ

type alias NetworkList = 
    { networks : (List Network) } 

type alias Network = 
    { name: String } 

そして、私はそれらをロード一度、私はビュー機能で、ULの一覧を表示します。この中で私が間違って何をやっている

The right side of (|>) is causing a type mismatch. 

    networks 
     |> List.map networkRow 

(|>) is expecting the right side to be a: 

    NetworkList -> a 

But the right side is: 

    List Network -> List (Html Msg) 

:デバッガはエラーを返し、

networkPickContent: NetworkList -> Html Msg 
networkPickContent networks = 
    networks 
     |> List.map networkRow 
     |> ul [ class "my_class" ] 


networkRow: Network -> Html Msg 
networkRow network = 
    li [] [ text network.name ] 

をしかし、実際にそれを動作させることができない。私は解決策のこの種のリストで、それぞれの子を反復処理することが分かってきました場合?このような目的のためにList.mapを使用することは合理的ですか?それとも、すべての子要素を表示する方がいいですか?

+1

これで解決策が得られました。 'type alias NetworkList = List Network'とは言えませんでした。 – z5h

答えて

2

ネットワークリストは、ネットワークをキーとするレコードです。代わりに次の方法を試してみてください

networkPickContent: NetworkList -> Html Msg 
networkPickContent networkList = 
    networkList.networks 
     |> List.map networkRow 
     |> ul [ class "my_class" ] 
+1

ちょっと@サイモン、ありがとう!私はこれを逃したとは信じられません。すてきな一日を! – Ilya

関連する問題