gpt4 book ai didi

java - 在 @PostConstruct 中调用 JSNI 方法 - Errai

转载 作者:行者123 更新时间:2023-12-01 13:50:39 25 4
gpt4 key购买 nike

我在尝试使用 Errai 2.3.2 从 Java 调用 JS 函数时遇到问题我正在使用 Bootstrap 开关,我需要调用 JS 函数才能激活它。我需要在创建页面并将所有元素附加到 DOM 元素后执行此操作。

我已经尝试了所有这些:@PostConstruct、@PageShowing、@PageShown、onAttach()..但这些都不适合我。

我有这个:

@Override
public void onAttach(){
enableToggleSwitch();
}

public static native void enableToggleSwitch() /*-{
$wnd.enableToggle();
}-*/;

当我调试它时,似乎是在将元素附加到 DOM 之前调用 onAttach() 方法。

有什么想法吗?

最佳答案

您不应重写 Widget 类的 onAttach() 方法。如果您想在附加小部件时执行某些操作,请覆盖 onLoad 方法。

  /**
* This method is called immediately after a widget becomes attached to the
* browser's document.
*/
protected void onLoad() {
enableToggleSwitch();
}

试试这个。

如果这不能解决您的问题,您可以尝试使用调度程序:

    Scheduler.get().scheduleDeferred(new ScheduledCommand() {
@Override
public void execute() {
enableToggleSwitch();
}
});

关于java - 在 @PostConstruct 中调用 JSNI 方法 - Errai,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19987785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com