Необходимо реализовать автоматическое добавление полей на карточку по определенному условию. То есть не в diff заранее добавлять, а именно динамически. Условие должно отрабатывать после загрузки страницы.
Нравится
Добрый вечер.
Создаете Ext класс, например, "Terrasoft. TextEdit"
Ext.create("Terrasoft. TextEdit", {...})
– примеры можно поискать в коробке. Потом находите компонент, в который хотите добавить новый элемент
var cmp = Ext.getCmp(…)
В полученном компоненте в свойство items добавляете его
cmp.items.add(«новий компонент»)
Вызываете ререндер, что бы новый компонент отобразился
cmp.reRender()
VladKapitanchyk,
Добрый день. Мне надо после загрузки вкладки добавить.
Пример.
{ "operation": "insert", "name": "Tab4040b433TabLabelGridLayoutef7de6d2", "values": { "itemType": 0, "items": [], "afterrender": { "bindTo": "loadWidgetModule" }, "afterrerender": { "bindTo": "loadWidgetModule" } }, "parentName": "Tab4040b433TabLabelGroup9e196572", "propertyName": "items", "index": 0 },
loadWidgetModule: function (config) { debugger; var cmp =Ext.getCmp("UsrUsrVwSysAccountLog1PageTab4040b433TabLabelGridLayoutef7de6d2GridLayout");// Ext.getCmp("Tab4040b433TabLabelGridLayoutef7de6d2"); // this.addFields(); var labelConfig = Ext.create("Terrasoft.Container", { id: "headerContainer", items: [ { className: "Terrasoft.Label", id: "headerLabel", selectors: { wrapEl: "#headerLabel" }, caption: "Изменение полей", } ] }); cmp.items.add(labelConfig); cmp.reRender(); },
но при добавлении элемента (items.add) ошибка message: Uncaught Terrasoft.ArgumentNullOrEmptyException: Несуществующий или пустой аргумент в render
Евгений Волоцкой,
В контейнер нужно тоже передавать объект Ext -Ext.create("Terrasoft.Label"…)