f# - 从 WebSharper 访问 JavaScript 的 this

标签 f# websharper

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

我试过这样的事情:

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

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

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

谢谢

最佳答案

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

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

IE。您倾向于返回数据并反过来以交互方式生成标记,仅在需要创建书签位置和有用链接时才使用服务器端标记。

因此,您通常可以在创建 DOM 元素时保持对它们的引用,只需将它们绑定(bind)到变量以供以后使用。

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

除此之外,这种性质的 F#-to-javascript 编译器还存在不那么明显的技术限制。由于我不完全理解它们,因此在这里详述它们感到不舒服,但请随时通过上面的 fpish.net 链接查看 Anton 的答案。

关于f# - 从 WebSharper 访问 JavaScript 的 this,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16317285/

相关文章:

F# 类型推断和通用函数参数

F#/"Accelerator v2"DFT 算法实现可能不正确

mono - WebSharper ui.next站点在本地工作,但不在docker中工作

websharper - 使用 Websharper 的实时客户端-服务器交互

google-chrome - webshaper webgl 演示安全问题?

f# - 有没有办法默认使用 JavaScript 属性?

f# - 将int转换为带有前导零的字符串

f# - 序列头尾

.net - 如何在 F# 中学习 GUI 编程

asp.net-mvc - 您如何将 Websharper 与现有的 ASP.NET MVC 项目集成?