Templates websharper-使用带有双向绑定的html模板

Templates websharper-使用带有双向绑定的html模板,templates,f#,websharper,Templates,F#,Websharper,我正在使用WebSharper 4.3.9和WebSharper.UI尝试在网页中获得变量的双向绑定 当我在f#代码中创建HTML元素时,我可以让事情正常进行 当用户在rvInput元素中输入文本时,它将镜像到p[] 但是当我有一个包含 ... <input ws-var="Email" type="email" placeholder="Your Email" autofocus=""> <button ws-onclick="Login">Login</butt

我正在使用WebSharper 4.3.9和WebSharper.UI尝试在网页中获得变量的双向绑定

当我在f#代码中创建HTML元素时,我可以让事情正常进行

当用户在rvInput元素中输入文本时,它将镜像到p[]

但是当我有一个包含

...
<input ws-var="Email" type="email" placeholder="Your Email" autofocus="">
<button ws-onclick="Login">Login</button>
${ServerResponse}
<div ws-hole="EmailEcho" class="echo-input"></div>
...
。。。
登录
${ServerResponse}
...
然后执行以下操作

type LoginTemplate = Template<"Login.html">

let LoginWidget () = 
    let Email = Var.Create "testing"
    let viewInput = View.FromVar Email
    let serverResponse = Var.Create ""

    LoginTemplate()
        .ServerResponse(serverResponse.View)
        .EmailEcho(viewInput)  // trying to echo what user types on to page
        .Login(fun e ->
                async {
                    let! res = Server.LoginClicked e.Vars.Email.Value 
                    serverResponse.Set res  // set the server response elem on page !this works
                    return ()
                } |> Async.StartImmediate
              )
    .Doc()
type LoginTemplate=Template
让LoginWidget()=
让Email=Var.创建“测试”
让viewInput=View.FromVar电子邮件
让serverResponse=Var.Create“”
LoginTemplate()
.ServerResponse(ServerResponse.View)
.EmailEcho(viewInput)//尝试将用户在页面上键入的内容回显到
.登录(乐趣e->
异步的{
让!res=Server.LoginClicked e.Vars.Email.Value
setres//在第页设置服务器响应元素!这很有效
返回()
}|>Async.startimimediate
)
.Doc()
${ServerResponse}元素将替换为onclick事件的响应

但我无法将用户在电子邮件字段中输入的文本镜像到emailEcho字段中

所以我想知道我能做些什么来将用户的输入镜像到

<div ws-hole="EmailEcho" class="echo-input"></div>

在模板中

非常感谢,非常抱歉提出这么长的问题
Derek

您需要在模板中添加以下内容:

    .Email(Email)

这会将您的
电子邮件
Var绑定到
,因此也会绑定到
e.Vars.Email

你好,Tarmil,很抱歉我的感谢回复太晚,我周末没有登录。这就成功了。我确实向上投射了这个答案,但因为我是新的StackOverflow,所以我收到一条消息说它不会显示在公共界面中。但是非常感谢,我不敢相信我错过了。
    .Email(Email)