从WebSharper访问JavaScript

时间:2013-05-01 11:27:38

标签: f# websharper

我对如何从WebSharper客户端代码中找到如何访问JavaScripts this关键字感到有点傻眼。

我试过这样的事情:

[<Inline "$this">]
let this() = X<obj>

但是这会在生成的js代码中吐出$this,这似乎没有引用正确的范围对象。

我觉得我不应该编写任何额外的代码,它应该是API的一部分。

由于

1 个答案:

答案 0 :(得分:1)

因此,一般的想法是,当使用WebSharper时,您很少需要像使用传统站点那样导航DOM。

拥有丰富的组合器来在客户端创建标记,结合RPC调用的简易性,有利于使用javascript在客户端上创建所有内容的模式。

即。您倾向于返回数据,然后以交互方式生成标记,只需要在创建书签位置和有用链接时使用服务器端标记。

因此,只需将DOM元素绑定到变量以供以后使用,通常可以在创建DOM元素时继续引用它们。

在我的个人用例中,我想访问this,但后来意识到this是对Kendo网格的引用,我在创建它时引用了它。因此,我不需要使用它。

除此之外,F#-to-javascript编译器在这种情况下施加了不那么明显的技术限制。由于我不完全理解他们,我觉得在这里详细介绍他们感到很不舒服,但是可以通过上面的fpish.net链接随时看到Anton的答案。