我正在使用 cdi-helpers
addon,而我的 UI
扩展了 ViewMenuUI
。我有 CDIViews
喜欢
ogscontractview
@UIScoped
@CDIView("Contract")
@ViewMenuItem(order = ViewMenuItem.DEFAULT, icon = FontAwesome.BANK)
public class OGSContractView extends CssLayout implements View{
// There's some UI Fields and some Functions to refresh the UI Fields
public void RefreshList(){...}
}
和
Schoolview
@UIScoped
@CDIView("School")
@ViewMenuItem(order = ViewMenuItem.DEFAULT, icon = FontAwesome.BANK)
public class SchoolView extends CssLayout implements View{
//Some UI and functions inside
//here, after some changes, I want to call a Refresh_Function
//from my OGSContractView class
someData.saveInDatabase();
ogsContractView.refreshList(); // here is my problem
}
在SchoolView
中,我正在更改数据库中的一些数据,然后我想调用OGSContractView.refreshList()
以更新那里的某些UI字段。
我该怎么做?
用于更新的问题。您无需从另一个视图调用refresh()
。
您可以在OGSContractView
上覆盖public void enter(ViewChangeEvent event)
,例如
@Override
public void enter(ViewChangeEvent event) {
refresh():
}
上面的方法每次输入该视图时都会由内部导航器调用。