Wire Event Listeners
Wire Event Listeners
since 6.0.2
To wire event listeners in a ViewModel like ZK Developer’s Reference/mvc/Controller/Wire Event Listeners, we have to call ` Selectors.wireEventListeners() ` in a method with @AfterCompose
. We then can use ` @Listen` to declare a method as an event listener. We do not recommend this usage because it loses ViewModel an important advantage: loose coupling with View. Please evaluate the trade-offs before using it.
Wire event listener in a ViewModel
public class SearchAutowireVM {
@AfterCompose
public void afterCompose(@ContextParam(ContextType.VIEW) Component view) {
Selectors.wireEventListeners(view, this);
}
@Listen("onClick=#mybutton")
public void submit(MouseEvent event) {
//handle events
}
}
- ` Selectors.wireEventListeners()
's first parameters is Root View Component which can be retrieved by
@ContextParam`.