этот вопрос примерно хороший дизайн калитки. У нас есть несколько способов, как мы могли бы это реализовать, но хотим получить некоторые идеи, как лучше его проектировать. Мы просто хотим построить простой TimerPanel, с меткой и таймером (какой-то StopWatch).Создание пользовательской модели компонентов (TimerPanel)
Как мы проектируем его Модель. Конечно, нам нужен IModel<LocalDateTime> timerUntil
. Но как мы можем определить текст Ярлык в TimerPanel?
The TimerPanel будет использоваться в ParentPanel. ParentPanel имеет модель, как это:
public class ParentDto {
private LocalDateTime timerAValidUntil;
private LocalDateTime timerBValidUntil;
}
С момента ParentDto не имеет никакой информации о ярлыке TimerPanel, следующих
new PropertyModel(getDefaultModel(), "timerAValidUntil")
недостаточно.
Здесь Вопрос: мы должны определить фиксированную wicketId, позволяет сказать, что timerLabel
для ярлыка в TimerPanel
и Родитель Группа должна определить его в Panel.properties.xml
?. Как (Вариант А)
timerPanelA:timerLabel
или IST лучше создать новый ModelObject, как (Вариант B)
public class TimerDto() {
String timerLabel;
IModel<LocalDateTime> timerValidUntil;
}
Мы всегда стараемся соединить наши модели, так что если мы изменим ModelObject в одной панели также изменяется во всех зависимых панелях. Поделись своими знаниями ... Thx.