Добрый день. Появилась задача добавить кнопку, аналогичную кнопке "Обработать" в почте.
Но просто так добавить кнопку не получилось. Кажется обработчик на кнопку вешается не простым bindTo, как мне казалось в начале.
Пример кода, который получился:
generateEmailButtonsContainerConfig: function() {
var buttonItems = [];
var processEmailButtonConfig = this.generateEmailProcessedButtonConfig();
buttonItems.push(processEmailButtonConfig);
/** Добавляем новую кнопку */
var skipEmailButtonConfig = this.generateSkipEmailButtonConfig();
buttonItems.push(skipEmailButtonConfig);
var deleteEmailButtonConfig = this.generateDeleteEmailButtonConfig();
buttonItems.push(deleteEmailButtonConfig);
var emailButtonContainerConfig = {
"className": "Terrasoft.Container",
"classes": {"wrapClassName": ["entity-item-relation-container"]},
"items": buttonItems
};
return emailButtonContainerConfig;
},
/** НОВАЯ КНОПКА */
generateSkipEmailButtonConfig: function() {
return {
"className": "Terrasoft.Button",
"style": Terrasoft.controls.ButtonEnums.style.RED,
"caption": "SKIP",
"click": {bindTo: "onSkipEmail"},
"markerValue": "skipingEmail"
};
},
/** Метод обработчик кнопки*/
onSkipEmail: function (model) {
window.console.log("It's working");
}
Но при нажатии на кнопку - появляется ошибка:
Возможно надо использоваться что-то похожее на fireEvent, но за все время не было необходимости в подобном функционале - поэтому плохо понимаю как и что делать. Вроде в этой статье https://community.terrasoft.ru/articles/kak-sozdat-polzovatelskii-eleme… о чем-то, что мне поможет, говорится. Но без понимая как это все устроено - это какое-то гадание на кофейной гуще.
Конечно, для решения моей задачи есть варианты и попроще, но менее изящные. Просто очень хочется разобраться и сделать именно первоначальную задумку:
Может кто-то реализовывал мой кейс или нечто подобное и сможет поделиться советом?