问题描述
1。问题与背景
我正在尝试使用Dart创建一个浏览器扩展程序,更具体地说,该扩展程序用于向某些网站添加键盘快捷键。
为了保证更好的TDD,我正在尝试在测试过程中模拟键盘事件。但是,当谈到Dart的HTML API时,似乎发生了很多变化,我还无法弄清楚如何使它们起作用。
2。我在尝试什么
我想注册一个特定的击键-泛型KeyboardEvent
显然不会削减它,只有KeyEvent
类可以处理。到目前为止,我正在尝试这样的事情:
document.body.dispatchEvent(KeyEvent('keypress',keyCode: 65,charCode: 97));
我从那里收到一个与此错误类似的错误消息:
Error: Failed to execute 'dispatchEvent' on 'EventTarget': parameter 1 is not of type 'Event'.
我还使用document
,document.window
和window
尝试了上面的代码,但没有一个起作用。可以在KeyEvent
文档中找到类似的内容。但是,他们提到add
到Stream
,这是不可能的。它必须是Sink
。
如果我不能通过调度事件来解决此问题,我认为我只需要简单地将模拟注入到测试中即可。
3。更多资源
到目前为止,对我有帮助的2个过时的答案是:
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)