我对如何从WebSharper客户端代码中找到如何访问JavaScripts this
关键字感到有点傻眼。
我试过这样的事情:
[<Inline "$this">]
let this() = X<obj>
但是这会在生成的js代码中吐出$this
,这似乎没有引用正确的范围对象。
我觉得我不应该编写任何额外的代码,它应该是API的一部分。
由于
答案 0 :(得分:1)
因此,一般的想法是,当使用WebSharper时,您很少需要像使用传统站点那样导航DOM。
拥有丰富的组合器来在客户端创建标记,结合RPC调用的简易性,有利于使用javascript在客户端上创建所有内容的模式。
即。您倾向于返回数据,然后以交互方式生成标记,只需要在创建书签位置和有用链接时使用服务器端标记。
因此,只需将DOM元素绑定到变量以供以后使用,通常可以在创建DOM元素时继续引用它们。
在我的个人用例中,我想访问this
,但后来意识到this
是对Kendo网格的引用,我在创建它时引用了它。因此,我不需要使用它。
除此之外,F#-to-javascript编译器在这种情况下施加了不那么明显的技术限制。由于我不完全理解他们,我觉得在这里详细介绍他们感到很不舒服,但是可以通过上面的fpish.net链接随时看到Anton的答案。