Мне нужно изменить компоненты Datebox и CalendarPop (Calendar) таким образом, чтобы, если я дам им конкретную дату/дату, календарь Calendar of Date будет показывать эти даты с определенным CSS (например, даты праздников).
Я уже ничего не делал с расширением виджета. Я уже проверял источники Datebox.js и не знаю, как переопределить _initPopup()
, где zul.db.CalendarPop()
.
Может быть, есть другой подход к достижению того, чего я хочу, или что-то не так?
Любая информация будет принята с благодарностью!
Вы можете использовать zk.override() для переопределения класса виджетов ZK.
Например,
(function () {
var _oldPop = {};
zk.override(zul.db.CalendarPop.prototype, _oldPop, {
setXXX: function () {
// override XXX function here.
_oldPop.setXXX.apply(this, arguments); // invoke the original one if needed.
}
});
})();
Пока переопределенный код может быть запущен до того, как вызывается функция setXXX.