Vaadin flow 如何在vaadin12中调用JavaScript';什么方法?

Vaadin flow 如何在vaadin12中调用JavaScript';什么方法?,vaadin-flow,vaadin12,Vaadin Flow,Vaadin12,在我的Vaadin 12项目中: import com.vaadin.flow.component.dependency.HtmlImport import com.vaadin.flow.component.dependency.JavaScript import com.vaadin.flow.component.dependency.StyleSheet import com.vaadin.flow.component.html.Div import com.vaadin.flow.com

在我的Vaadin 12项目中:

import com.vaadin.flow.component.dependency.HtmlImport
import com.vaadin.flow.component.dependency.JavaScript
import com.vaadin.flow.component.dependency.StyleSheet
import com.vaadin.flow.component.html.Div
import com.vaadin.flow.component.page.BodySize
import com.vaadin.flow.component.page.Page
import com.vaadin.flow.router.Route
import com.vaadin.flow.server.VaadinRequest
import org.slf4j.LoggerFactory

@Route(value = "myform")
@JavaScript("https://somejavascript.js")
class MyForm : Div() {
    private val logger = LoggerFactory.getLogger(this::class.java)

    init {
        val request = VaadinRequest.getCurrent()
        val myparam= request.getParameter("myparam")
        logger.info("myparam = $myparam")

    }
}
如您所见,我通过注释导入脚本:
somejavascript.js
。 美好的 此脚本具有以下方法:
myJavaScriptMethod

如何在我的Vaadin类中调用此方法
MyForm

您可以使用以下代码调用JS函数
myJavaScriptMethod()

UI.getCurrent().getPage().executeJavaScript("myJavaScriptMethod();");
您可以找到文档

(奇怪的是,本文档仅针对vaadin版本11显示,但在vaadin 12和13中仍然以相同的方式显示)

如何将一个字符串参数传递给此方法?根据链接的文档,您可以使用
UI.getCurrent().getPage().executeJavaScript(“myJavaScriptMethod($0);”,myStringVariable)执行此操作我尝试以下方法:UI.getCurrent().getPage().executeJavaScript(“myJavaScriptMethod($0);”,myParam);-但是我得到错误:(ReferenceError):当javascript导入不起作用时,myJavaScriptMethod没有定义。我不确定是否在@JavaScript注释中提供外部js文件。你能下载所说的js脚本并将其放入你的静态资源文件夹吗?
@JavaScript
注释的注释说明绝对URL确实有效。