Я заметил, что во время работы с некоторыми ошибками сборки в новом проекте Elm 0.19 я начал видеть такие ошибки, как следующие при запуске elm-make.
50 | [iframe [src "https://fakeurl.com", высота" 0 ", ширина
"0", style [("display", "none"), ("visibility", "hidden")],
песочница ""]
Этот style
вызов производит:
String -> Attribute msg
Но все предыдущие элементы в списке:
Attribute msg
Подсказка: все в списке должно быть одинакового типа. это
таким образом, вы никогда не столкнетесь с неожиданными ценностями в процессе. Смешивать
различные типы в одном списке, создайте «тип объединения», как описано
в: http://guide.elm -lang.org / types / union_types.html
Прямая ошибка после этого гласит:
Этот аргумент является списком типа:
List ( String, String )
Но style
нужен 1-й аргумент:
String
Из того, что я могу сказать, использование атрибута style в строке, где жалуется elm-make, представляется ожидаемым использованием для последних более свежих версий elm / html .
Ex.
style [ ( "display", "none" ), ( "visibility", "hidden" ) ]
Если взглянуть немного глубже, то похоже, что у меня установлен пакет elm / html 1.0.0, тогда как последняя версия Elm 0.19 - 2.0.0. Еще более странным является то, что версия elm / html для .19 под названием 1.0.0 больше похожа на копию пакета elm / html для 0.18, которая называлась ~ версия 5.0.0 ~, и все они имеют более новую подпись, которая занимает список. Глядя на фактический пакет, установленный под C:\Users\me\AppData\Roaming\elm\0.19.0\package\elm\html\1.0.0\src\Html
, я действительно вижу, что подпись style : String -> String -> Attribute msg
, что, насколько я понимаю, должно быть только для версии elm / html пакета 1.0.0 для Elm 0.18. Исходя из этого, я могу только заключить, что у меня есть 0,18 пакетов в моей папке репозитория пакетов elm / 0.19.0.
Моя логика выше звука или есть другое объяснение? Как так получилось, возможно, я сделал что-то не так? Это известная проблема с одним из инструментов? Как мне решить эту проблему для моего проекта, чтобы я мог двигаться вперед?