Size: a a a

Elm Lang сообщество разработчиков

2017 October 03

к

кана in Elm Lang сообщество разработчиков
ошибки в рекурсивных схемах в любом языке нормально не вывести, они слишком абстрактные
источник

Ф

Филипп in Elm Lang сообщество разработчиков
занятная статья
источник

Ф

Филипп in Elm Lang сообщество разработчиков
Alexander Nuikin
Похоже, что в 0.18 не исправить, а в 0.19 предположительно уже исправлено.
Проблема связана с генерацией кода для сложных рекурсий.
а можешь кинуть ссылку на issue если есть или репро описать?
источник

Ф

Филипп in Elm Lang сообщество разработчиков
хочу избежать у себя таких ситуаций, но пока не въехал когда она возникает
источник

Ф

Филипп in Elm Lang сообщество разработчиков
вроде нашел
источник

AN

Alexander Nuikin in Elm Lang сообщество разработчиков
Филипп
а можешь кинуть ссылку на issue если есть или репро описать?
источник

Ф

Филипп in Elm Lang сообщество разработчиков
да оно, спасибо
источник

AN

Alexander Nuikin in Elm Lang сообщество разработчиков
Это то самое предположение, которое должно решать проблему в 0.19
источник
2017 October 04

MP

Mike Potanin in Elm Lang сообщество разработчиков
Как изменить в eml-mdl ширину textaria? А еще лучше, сделать его растягиваемым, как по высоте? https://runelm.io/c/u2m
источник

MP

Mike Potanin in Elm Lang сообщество разработчиков
Интересное применение старого ELM (который с FRP) https://project-archive.inf.ed.ac.uk/ug4/20140574/ug4_proj.pdf
По моему и новый должен в этой области хорошо работать 😊
источник

AK

Anton Kotenko in Elm Lang сообщество разработчиков
Да, в сигналах всё-таки мощь была
источник

AK

Anton Kotenko in Elm Lang сообщество разработчиков
Хотя в принципе они и на мессаджи ложатся
источник

AW

Arthur Welf in Elm Lang сообщество разработчиков
Привет. Подскажите плз, как в Elm сделать следующее:

У меня приложение берет по API вчерашнюю цену биткойна здесь: https://api.coindesk.com/v1/bpi/historical/close.json?for=yesterday

... а потом вступает в работу декодер, который выдирает из json эту самую цену:

bitcoinYesterdayPriceDecoder : Decoder Float
bitcoinYesterdayPriceDecoder =
   Decode.at
       [ "bpi", "2017-10-03" ]
       Decode.float

Но поле вчерашней даты каждый день, по понятным причинам, меняется. Можно ли в декодере как-то сделать, чтобы вместо строки с вчерашней датой декодер брал любую строку внутри "bpi" (она там единственная)? Wildcard _ вместо последнего элемента списка компилятор не пропускает.
источник

Вл

В ладу in Elm Lang сообщество разработчиков
Arthur Welf
Привет. Подскажите плз, как в Elm сделать следующее:

У меня приложение берет по API вчерашнюю цену биткойна здесь: https://api.coindesk.com/v1/bpi/historical/close.json?for=yesterday

... а потом вступает в работу декодер, который выдирает из json эту самую цену:

bitcoinYesterdayPriceDecoder : Decoder Float
bitcoinYesterdayPriceDecoder =
   Decode.at
       [ "bpi", "2017-10-03" ]
       Decode.float

Но поле вчерашней даты каждый день, по понятным причинам, меняется. Можно ли в декодере как-то сделать, чтобы вместо строки с вчерашней датой декодер брал любую строку внутри "bpi" (она там единственная)? Wildcard _ вместо последнего элемента списка компилятор не пропускает.
наверное проще всего будет передавать в функцию вчерашнюю дату
источник

AW

Arthur Welf in Elm Lang сообщество разработчиков
В ладу
наверное проще всего будет передавать в функцию вчерашнюю дату
Это понятно, но влечёт за собой дополнительные сложности. Например, на у клиента из Японии рано утром на компьютере будет одна дата, а на сервере, который обслуживает API - другая, и из-за этого декодирование пройдёт неудачно.
источник

EK

Evgeny Kochetkov in Elm Lang сообщество разработчиков
там же небось UTC
источник

Вл

В ладу in Elm Lang сообщество разработчиков
Arthur Welf
Привет. Подскажите плз, как в Elm сделать следующее:

У меня приложение берет по API вчерашнюю цену биткойна здесь: https://api.coindesk.com/v1/bpi/historical/close.json?for=yesterday

... а потом вступает в работу декодер, который выдирает из json эту самую цену:

bitcoinYesterdayPriceDecoder : Decoder Float
bitcoinYesterdayPriceDecoder =
   Decode.at
       [ "bpi", "2017-10-03" ]
       Decode.float

Но поле вчерашней даты каждый день, по понятным причинам, меняется. Можно ли в декодере как-то сделать, чтобы вместо строки с вчерашней датой декодер брал любую строку внутри "bpi" (она там единственная)? Wildcard _ вместо последнего элемента списка компилятор не пропускает.
мб field "bpi" dict |> Dict.values |> List.head
источник

AW

Arthur Welf in Elm Lang сообщество разработчиков
Arthur Welf
Привет. Подскажите плз, как в Elm сделать следующее:

У меня приложение берет по API вчерашнюю цену биткойна здесь: https://api.coindesk.com/v1/bpi/historical/close.json?for=yesterday

... а потом вступает в работу декодер, который выдирает из json эту самую цену:

bitcoinYesterdayPriceDecoder : Decoder Float
bitcoinYesterdayPriceDecoder =
   Decode.at
       [ "bpi", "2017-10-03" ]
       Decode.float

Но поле вчерашней даты каждый день, по понятным причинам, меняется. Можно ли в декодере как-то сделать, чтобы вместо строки с вчерашней датой декодер брал любую строку внутри "bpi" (она там единственная)? Wildcard _ вместо последнего элемента списка компилятор не пропускает.
В общем, эту проблему я решил так: я декодирую все поля "bpi" в List ( String, Float ):

bpiDecoder : Decoder (List ( String, Float ))
bpiDecoder =
   Decode.field "bpi" <| Decode.keyValuePairs Decode.float


Поскольку там поле одно, то у меня получается список, содержащий один тапл. В апдейте я беру голову этого списка, делаю паттерн-матчинг тапла, игнорирую первый элемент и в качестве цены беру второй элемент:

HandleYesterdayBitcoinPrice result ->
   case result of
       Ok listOfTuples ->
           case List.head listOfTuples of
               Just ( _, price ) ->
                   { model | yesterdayPrice = toString price } ! []

               Nothing ->
                   { model | apiResponseError = "Nothing" } ! []

       Err error ->
           { model | apiResponseError = toString error } ! []
источник
2017 October 18

AW

Arthur Welf in Elm Lang сообщество разработчиков
Я тут столкнулся с неожиданной проблемой с textareaи input.

Есть страница, где можно ввести id юзера, приложение запрашивает его данные по API, вставляет из ответа сервера в модель и отображает их во вьюхе. Также во вьюхе есть input'ы, в которые можно ввести текст и изменить через API данные юзера. После этого изменённые данные запрашиваются с сервака и, после получения ответа. обновляется модель, и новая модель рендерится во вьюхе.

Так вот: всё у меня работает, все данные изменяются и на серваке, а потом в модели, потом они обновляются на странице, но введённый ранее в инпуты текст остается на месте. Ввожу id другого юзера, получаю с сервака его данные, рендерю их на странице - а текст в инпутах как был с последнего ввода, так и остался.

ОК, думаю, поставлю в аттрибутах инпутов в качестве defaultValue данные, которые живут в соответствующих свойствах модели. Тогда, думаю, когда в модели данные заменяются на данные другого юзера, дефолтный текст будет заменяться на тот, что у него в свойствах. А нифига! Как был текст, оставшийся с последнего ввода в этот инпут, так и остался!

Кто знает, как сделать очищение инпута после того, как ты закончил ввод в него текста и нажал кнопку отправки данных?
источник

AB

Alexander Biryukov in Elm Lang сообщество разработчиков
ну у тебя же там должно сообщение лететь и и во время его обработки должен по идее тереть в модели данные, которые связаны с этим полем.
источник