使用 scalajs 创建自定义 DOM 事件

2023-12-11

我找不到使用 scala-js 创建自定义事件的方法。例如,使用 js,您可以创建如下所示的自定义事件(摘自此处):

  var event = new CustomEvent('build', { 'detail': elem.dataset.time });

但是,没有构造函数CustomerEvent or Event在接受参数的 scala-js 中。此外,还可以进行子类化,例如:

  class DrawEvent extends Event {
    override def `type` = "draw"
  }

导致

未捕获的类型错误:未定义不是函数

当尝试构建via时new DrawEvent()

有任何想法吗?


要在 ScalaJs 中实例化 javascript 类,您必须使用 js.Dynamic.newInstance:

这应该适用于您的用例:

val event = js.Dynamic.newInstance(js.Dynamic.global.CustomEvent)("build", js.Dynamic.literal(detail = elem.dataset.time)).asInstanceOf[js.dom.CustomEvent]

备注部分(一直在底部)提供了更多信息:http://www.scala-js.org/doc/calling-javascript.html

这是使用一些导入来缩短它的相同解决方案

import js.Dynamic.{ global => g, newInstance => jsnew, literal => lit }
val event = jsnew(g.CustomEvent)("build", lit(detail = elem.dataset.time)).asInstanceOf[js.dom.CustomEvent]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 scalajs 创建自定义 DOM 事件 的相关文章

  • 如何询问 Scala 类型参数的所有实例化是否存在证据?

    给定皮亚诺数的以下类型级加法函数 sealed trait Nat class O extends Nat class S N lt Nat extends Nat type plus a lt Nat b lt Nat a match c
  • Scala 2.10,它对 JSON 库和案例类验证/创建的影响

    显然 在 Scala 2 10 中我们得到了改进的反射 这将如何影响 lift json jerkson sjson 和朋友 此外 我们能否期望在不久的将来 Scala 中会出现内置的 JSON 语言功能 如 Groovy 的出色 GSON
  • Spark:替换嵌套列中的空值

    我想更换所有n a以下数据框中的值unknown 它可以是scalar or complex nested column 如果它是一个StructField column我可以循环遍历列并替换n a using WithColumn 但我希
  • 如何从spark管道逻辑模型中提取变量权重?

    我目前正在尝试学习 Spark Pipeline Spark 1 6 0 我将数据集 训练和测试 导入为 oas sql DataFrame 对象 执行以下代码后 生成的模型是oas ml tuning CrossValidatorMode
  • 覆盖 Predef 的隐式转换

    我有多个返回 java lang Integer 的方法 然后使用 Scala 的 Predef 隐式转换将其隐式转换为 Int 下面是它的编写方式there https github com scala scala blob v2 11
  • Scala Function.tupled 和 Function.untupled 等效于变量 arity,或者使用元组调用变量 arity 函数

    昨晚我试图围绕接受和调用通用函数做一些事情 即类型在调用站点上已知 但可能因调用站点而异 因此定义应该是跨参数通用的 例如 假设我有一个函数f A B C gt Z 其实这样的还有很多fs 我事先不知道 所以我无法确定类型或数量A B C
  • 如何设计具有相互依赖的测试的 Specs2 数据库测试?

    有没有一些首选的方法来设计Specs2 http etorreborre github com specs2 测试 有很多测试取决于之前测试的结果 下面 您将找到我当前的测试套件 我不喜欢var位于测试片段之间 不过 它们是 需要的 因为某
  • Scala 中奇怪的类型不匹配

    我希望这个问题还没有在其他地方得到解答 在这里没有找到答案 在我的本地化系统中 我有一个名为 Language 的类 class Language val name String dict HashMap String String def
  • 以编程方式启动 Scala REPL?

    我想从命令行启动 Scala Swing 应用程序 然后在应用程序启动后 放入 Scala REPL 中以用作控制界面 理想情况下 我还想预先绑定一些变量名称 更好的是使用 REPL 的 Java2D 终端模拟器 但我找不到任何合适的东西
  • 如何在Gradle中支持多种语言(Java和Scala)的多个项目?

    我正在尝试将过时的 Ant 构建转换为 Gradle 该项目包含约50个Java子项目和10个Scala子项目 Java 项目仅包含 Java Scala 项目仅包含 Scala 每个项目都是由 Java 和 Scala 构建的 这大大减慢
  • 如何将模型结果保存到文本文件?

    我正在尝试将从模型生成的频繁项集保存到文本文件中 该代码是 Spark ML 库中 FPGrowth 示例的示例 Using saveAsTextFile直接在模型上写入 RDD 位置而不是实际值 import org apache spa
  • 多个 scala 库导致 intellij 出错?

    我正在使用 intellij 14 和 scala 2 11 6 使用 homebrew 安装并使用符号链接 ln s usr local Cellar scala 2 11 6 libexec src usr local Cellar s
  • Scala 宏的位置怎么了?

    我试图获取宏参数的原始输入字符串 但返回的位置似乎有点偏离 考虑这个宏 例如 object M import scala reflect macros Context import language experimental macros
  • Scala 的代码覆盖率工具 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • HashPartitioner 是如何工作的?

    我阅读了文档HashPartitioner http spark apache org docs 1 3 1 api java index html org apache spark HashPartitioner html 不幸的是 除了
  • 模拟 BlazeClientBuilder[IO] 以返回模拟客户端[IO]

    我正在使用BlazeClientBuilder IO resource方法得到Client IO 现在 我想模拟客户端进行单元测试 但不知道该怎么做 有没有一个好的方法来嘲笑这个 我会怎么做 class ExternalCall val r
  • 对两种类型之间的二元关系进行建模

    有企业 也有人 用户可以对某个企业点赞或发表评论 但效果是一样的can not发生在一个人身上 当用户发布有关某个企业的内容或对其点赞时 该企业就被称为target喜欢或帖子 trait TargetingRelation Targetin
  • Play框架:单属性案例类的JSON读取

    我正在尝试为包含单个属性的案例类创建隐式 JSON Reads 但收到错误 Reads Nothing 不符合预期类型 这是代码 import play api libs functional syntax import play api
  • 如何在 scala repl 和 sbt 控制台中关闭/打开 typer 阶段

    是否可以在不退出当前会话的情况下切换阶段 我尝试进入 power 模式 但它仍然不打印类型 在SBT中只需添加以下设置 set scalacOptions in Compile console Xprint typer 在 REPL 中你可
  • 为什么自类型类可以声明类

    我知道 Scala 只能混合特征 这对于依赖注入和蛋糕模式是有意义的 我的问题是为什么我仍然可以声明一个需要另一个 类 但不需要特征的类 Code class C class D self C gt 这仍然编译成功 我认为它应该编译失败 因

随机推荐

  • 验证 HTML 中的信息 - 代码定位

    我无法让代码验证正常工作 我已经编写了姓名和电子邮件地址的验证 但是 我不知道在哪里插入命令以便在我的主 html 中调用 php 代码 我想我必须在这样的表单中添加一个操作 div class logo div div class log
  • 启动 angular.bootstrap 后取消引导? [关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 尝试重新编译角度应用程序时遇到问题 有没有办法在调用 angular bootstrap 后取消引导 一旦我在已经引导的情况下执行 angular bootstrap 就会导致错误 T
  • 最小化时 pywin32 / pywinauto 在远程桌面中无法正常工作

    我有一个 Jenkins 管道 它在远程服务器中执行一个程序 该服务器使用 pywin 来操作应用程序以进行功能测试 当我打开远程桌面时 我的应用程序运行得很好 但是当我关闭远程桌面并从 Jenkins 运行它时 应用程序就会丢失 我所做的
  • PHP 短三元(“Elvis”)运算符与空合并运算符

    有人可以解释一下之间的区别吗三元运算符简写 and 空合并运算符 在 PHP 中 他们什么时候表现不同 什么时候表现相同 如果真的发生了 a b VS a b Elvis 如果第一个参数包含 true ish 值 则返回它 查看哪些值被认为
  • 如何将上传文件保存到另一台服务器

    我目前正在使用 django 现在我需要将用户上传的文件保存到另一台服务器 该服务器不是为 django 应用程序提供服务的服务器 该文件将保存到文件系统而不是数据库 有人可以告诉我该怎么做吗 默认 Django 行为是将文件保存在文件系统
  • C# 中图像过滤的高速性能

    我有位图 我想对我的位图应用中值过滤器 但我不能使用 GetPixel 和 SetPixel 因为速度对我来说非常重要 我需要非常快速的方法来做到这一点 也许可以通过Graphics DrawImage Image Point Rectan
  • 如何按两个条件对 ruby​​ 数组进行排序

    我想通过两个不同的条件对该数组进行排序 首先 我想按类型对数组进行排序 类型可以是 1 2 3 4 我想按 4 1 2 3 的顺序对它们进行排序 然后 在每种不同的类型中 我想按百分比降序对它们进行排序 因此 排序后的数组将如下所示
  • 如何强制 VB6 使用应用程序目录中的 DLL 和 OCX?

    我想将我的依赖文件放在应用程序目录中 我好像记得你可以强制VB6只使用本地目录中的文件 有什么提示吗 您可能还想尝试设置免注册COM为您的项目 有一个免费软件叫无人值守制作我的清单这将为您完成大部分工作
  • 如何从 RSS itunes 读取图像标签

    我尝试阅读我的 iTunes RSS 我可以阅读标题 甚至 itunes subtitle 但标签图像有问题 FEED
  • 如何用另一个子字符串替换字符串的一部分

    我需要将字符串 on 替换为 in strstr 函数返回一个指向字符串的指针 所以我认为将新值分配给该指针会起作用 但它没有 include
  • 如何使用 QDataStream 在 Python 中打开 bin 文件

    我有一个在应用程序中编码的 bin 文件 我需要访问该文件并将其转换为 csv 文件 我已获得文档 但不确定如何在 Python 中访问该文件的内容 以下是有关数据集如何序列化的一些详细信息 Datasets bin 是使用 Qt 的 QD
  • 使用 imshow 校正轴

    我试图使用 numpy meshgrid 和 pylab imshow 绘制等高线图 一开始使用我在 stackoverflow 上找到的一些技巧 效果非常好 谢谢家伙 D f scipy linspace 1e5 1e6 100 A sc
  • .NET 中是否有与 Mac OS X 文档模式表等效的内容?

    我的应用程序收到越来越多的请求 要求某些对话框的行为类似于Mac OS X 文档模态表功能 其中对话框仅适用于父控件 对话框 而不适用于整个应用程序 请参阅http en wikipedia org wiki Window dialog 当
  • 将带逗号的货币转换为数字

    我在数据框中有一列 如下所示 COL1 54 345 65 231 76 234 我如何将它转换成这样 COL1 54345 65231 76234 我一开始尝试的方式是 df COL1 lt as numeric as character
  • 在对 pandas 的 DataFrame 进行切片后,如何更新 pandas MultiIndex 的级别?

    我有一个带有 pandas MultiIndex 的数据框 In 1 import pandas as pd In 2 multi index pd MultiIndex from product CAN USA total names c
  • C++:如何检查窗口是否即将关闭?

    我正在尝试制作一个基于 Win32 nix 控制台的 ASCII 游戏 我不想使用任何非标准 C 或 nix windows h 上的库 我希望它的结构像游戏循环一样 又名 while WIN CLOSE FUNCTION Do crap
  • 使用 ActiveRecord 帮助程序删除 VS 查找孤儿

    我正在尝试删除所有organizations不再有任何users 使用下面的代码 我可以找到我想要删除的所有记录 Organization includes users where users id nil references users
  • cvtColor 断言失败(使用 C++ 的 OpenCV)

    I have a cv Mat image 对象 我从文件中加载了图像 它正确地读取了它 现在我编写了一个函数将其转换为灰色 cv cvtColor image image CV RGB2GRAY 出现这个错误 OpenCV Error A
  • 如何在 SwiftUI 中的选项卡栏特定视图中隐藏导航栏?

    XCode11 beta3 MacOS Catalina 10 15 测试版 19A501i 我想在推送时隐藏 tabBar 任何命令都会很有帮助 谢谢 点我显示gif图 struct ContentView View var body s
  • 使用 scalajs 创建自定义 DOM 事件

    我找不到使用 scala js 创建自定义事件的方法 例如 使用 js 您可以创建如下所示的自定义事件 摘自此处 var event new CustomEvent build detail elem dataset time 但是 没有构