Mar*_*ari 2 java anchor downloadfile vaadin vaadin14
我是 Vaadin 框架的新手,我想知道是否有办法捕获 Anchor 的默认点击事件?(Vaadin14,仅限 Java - v11)
我知道我可以这样做:
Anchor download = new Anchor()
download.getElement().addEventListener("click", event -> doStuff())
Run Code Online (Sandbox Code Playgroud)
但它似乎不是内置的点击侦听器,因为我可以添加带有 StreamResource 的锚点。然后,单击 Anchor 开始文件下载 - 无需添加任何其他侦听器。
回答这些问题中的任何一个都可以解决我的问题,我相信:
您实际上是将锚点用作链接还是按钮?如果是后者,您可以只使用 Button 并将其样式设置为链接。
回答您的问题:
addEventListener("click", e ->download.getElement().callFunction("click")(同clickInClient)addEventData()您也可以尝试将Anchor实现ClickNotifiermixin 接口的子类化,该接口将为您提供该addClickListener()方法,然后您也可以ClickEvent手动触发它,就像在按钮的click()
public class ClickableAnchor extends Anchor implements ClickNotifier {
public void click() {
fireEvent(new ClickEvent<>(this, false, 0, 0, 0, 0, 0, 0, false, false,
false, false));
}
public void clickInClient() {
getElement().callJsFunction("click");
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
62 次 |
| 最近记录: |