因此,我在我的搜索中發現的所有內容都是如何在JS中完成的,我知道該怎麼做。我希望找到的是一個GWT機制來做到這一點。加載GWT頁面,然後顯示window.alert
我想要做的是在頁面加載(不難)後在頁面上發出提示window.alert(app.getStatus())
。問題在於,使用我當前的代碼,在頁面加載完成之前彈出警報,以便用戶看到部分加載的白頁,直到單擊「確定」按鈕時纔會執行任何操作。
這是我目前有
public class DisplayApplicationViewImpl extends Composite
implements DisplayApplicationView {
public DisplayApplicationViewImpl() {
/*...
Lot of logic that is not helpful
...*/
initWidget(uiBinder.createAndBindUi(this));
Window.alert("Test");
}
}
我也嘗試下面的(雖然我不認爲這是正確的使用),但這些只火一次,當應用程序被打開,然後將除非頁面刷新並且仍然存在負載「問題」,否則不會觸發任何其他應用程序。
Scheduler.get().scheduleFinally(new RepeatingCommand(){
@Override
public boolean execute() {
Window.alert("Test");
return false;
}
});
這是一個溫和的接近,因爲它允許加載GIF展示,但我不知道這是爲什麼有字面上該功能僅此代碼沒有任何變化。
Scheduler.get().scheduleDeferred(new ScheduledCommand(){
@Override
public void execute() {
Window.alert("Test");
}
});
我看了一下'Window.onload()',但似乎並不是我的選擇。
這是我試圖概述的方法之一,它仍然不會讓頁面完全加載。此外,還有一個非常奇怪的行爲,這會導致警報只會觸發一次,除非刷新應用程序(文字Web應用程序)。我會研究數據加載,但爲什麼刷新行爲? – nerdlyist
1.您的頁面在您的GWT代碼執行之前已經完全加載。您正在討論GWT代碼加載的頁面上的內容。如果你異步加載任何內容,你可以在這些方法的回調中做些什麼。 –
2.您的視圖只構造一次,所以消息只顯示一次。這是正確的行爲。如果您想多次顯示該消息,您的演示者/活動應顯示此消息或告訴視圖以顯示該消息。 –