繁体   English   中英

JavaFX WebView中的TypeError

[英]TypeError in JavaFX WebView

我正在registering我的Java Object ,如下所示

engine = webView.getEngine();
engine.getLoadWorker().stateProperty().addListener(new ChangeListener<Worker.State>() {
        @Override
        public void changed(ObservableValue<? extends Worker.State> observable, Worker.State oldValue, Worker.State newValue) {
            if (newValue == Worker.State.SUCCEEDED) {
                JSObject jsobj = (JSObject) engine.executeScript("window");
                jsobj.setMember("iLink", new IndexLink(this));
                webView.setContextMenuEnabled(false);
            }
        }
});

有时这很好用,但有时却显示"TypeError: iLink.getDemoTable is not a function. (In 'iLink.getDemoTable()', 'iLink.getDemoTable' is undefined) (index.js,7)"

谁能告诉我above codemissing哪些步骤或有anything wrong

提前致谢。

我从这里得到解决方案

并做了以下更改

link = new IndexLink(this); 在控制器的初始化方法中

engine = webView.getEngine();
link=new IndexLink(this);
engine.getLoadWorker().stateProperty().addListener(new ChangeListener<Worker.State>() {
    @Override
    public void changed(ObservableValue<? extends Worker.State> observable, Worker.State oldValue, Worker.State newValue) {
        if (newValue == Worker.State.SUCCEEDED) {
            JSObject jsobj = (JSObject) engine.executeScript("window");
            jsobj.setMember("iLink", link);
            webView.setContextMenuEnabled(false);
        }
    }
});

jsobj.setMember(“ iLink”,link); 并且此更改对“工人”成功

在那之后一切都很好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM