Как я могу обработать onchange для параметра выбора в пользовательском интерфейсе WebSharper.Next

Я пытаюсь отобразить другое представление SPA на основе параметра, выбранного в Doc.Select.

Я хотел бы обрабатывать события onchange с помощью WebSharper UI.Next. Я искал некоторую информацию и видел on, который можно установить в атрибутах Elt, например:

spanAttr [on.click (fun el ev -> ())] [text "some span"]

можно найти здесь: http://www.websharper.com/question/81410/event-handlers-for-ui-next-elt-objects

Однако я совершенно не уверен, как обрабатывать изменения в Doc.Select с помощью инструментов, доступных в UI.Next.

У меня есть следующее:

let rv = Var.Create "1"
Doc.Select [  ] (fun _ -> "") [ "1"; "2"; "3" ] rv

Я не уверен, как получить доступ к событиям onchange, чтобы я мог использовать маршрутизатор для перенаправления на другое представление SPA.

Каково соглашение для выполнения чего-то вроде изменения представления на основе выбора раскрывающегося списка?


person Mr. Mr.    schedule 15.06.2016    source источник


Ответы (1)


Вам не нужно заниматься onchange самостоятельно. Если вы используете Doc.Select, соответствующий Var будет обновляться каждый раз при изменении раскрывающегося списка. Вы можете просто сделать что-то вроде:

rv.View.Doc(function
    | "1" -> text "page 1"
    | "2" -> text "page 2"
    | "3" -> text "page 3"
    | _ -> failwith "Should never happen")

и вставьте это в свой основной Doc, который будет отображаться.

person qwe2    schedule 06.07.2016