如何在QueryParameters
期间可靠地检索onAttach
?
我的组件需要这些参数用于配置目的,并且在beforeEnter
期间需要获取相同信息的初始加载期间不会调用.getLocation
(方便地具有onAttach
)。
由于某种原因,VaadinRequest.getCurrent()
返回null
即使AttachEvent
不知道Location
BeforeEvent
的setParameter
。
@Route("workaround")
public class Workaround extends FlexLayout implements AttachNotifier, HasUrlParameter<String> {
private Location currentLocation = null;
/* ... */
@Override
public void setParameter(BeforeEvent event, @OptionalParameter String parameter) {
// called before onAttach
currentLocation = event.getLocation();
}
@Override
protected void onAttach(AttachEvent attachEvent) {
super.onAttach(attachEvent);
QueryParameters qm = currentLocation.getQueryParameters();
/* ... */
}
}