Програмно изменить название вкладки на странице редактирования

Пытаюсь через код изменить название вкладки, в частности вкладку Лента, там планируется отображать количество сообщений.

Сделал замещение страницы BaseModulePageV2 (ESN)

Написал такой код.

define("BaseModulePageV2", [], function() {
	return {
		methods: {
			init: function() {
				this.callParent(arguments);
				this.setESNTabCaptionNumber();
			},
			setESNTabCaptionNumber: function() {
				var esnTabCaption = this.get("Resources.Strings.ESNTabCaption") + "()";
				this.$ESNTabCaptionNumber = esnTabCaption;
			}
		},
		attributes: {
			"ESNTabCaptionNumber": {
				type: Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN,
				dataValueType: this.Terrasoft.DataValueType.LONG_TEXT,
				value: ""
			}
		},
		diff: /**SCHEMA_DIFF*/[
			{
				"operation": "merge",
				"name": "ESNTab",
				"values": {
					"caption": {"bindTo": "ESNTabCaptionNumber"},
				}
			},
		]/**SCHEMA_DIFF*/
	};
});

Но после загрузки страницы имя вкладки становится пустое. Что делать, куда копать или забиндиться на атрибут в данном случае нет возможности?

Нравится

3 комментария

Добрый день!

Скорее всего вместо this.$ESNTabCaptionNumber = esnTabCaption нужно написать this.set("ESNTabCaptionNumber", esnTabCaption)

Сидоров Александр В., нет, так тоже не работает

Нашел похожую тему https://community.terrasoft.ru/questions/izmenit-ima-vkladki-tab

Придется писать напрямую в коллекцию.

Показать все комментарии