Параметр функции, представляющий собой строку, не отображается в блоке содержимого диалогового окна. Мне нужно знать, почему и как заставить это работать. Параметр, который я пытаюсь показать, представляет собой строку с php-кодом.
Я использовал MessageToast.show() в своей функции для просмотра выходной строки. Появится выходная строка. Я также попытался добавить строку «hello world» в блок контента, и это работает.
Вот моя логика кода - это строка.
logicDialog: function (logic) {
MessageToast.show(logic);
var dialog = new Dialog({
title: 'Boolean Logic',
type: 'Message',
content: new TextArea({
value: logic,
editable: false,
growing: true,
growingMaxLines: 20
}),
beginButton: new Button({
text: 'Close',
press: function () {
dialog.close();
}
}),
afterClose: function () {
dialog.destroy();
}
});
dialog.open();
}
Ожидаемый результат — диалог, показывающий логику строки.
да это именно то, что я получаю.
Поскольку пример @TiiJ7 работает нормально, я просто попытаюсь указать на некоторые возможные проблемы:
-is your Dialog a sap.m.Dialog()?;
-is there any error before the dialog is triggered? (that could somehow stop the functionality of the dialog);
-put a break point in the line of "dialog.close();" to check the content of the string on the scope of the dialog opened;
-is it possible that the string is being manipulated somewhere else and it could a be an issue with concurrency? 1 thread could be changing the value of the string (note that a string is a pointer).
Я надеюсь, что эти пункты могут пролить свет на вас, поскольку вы единственный, кто имеет доступ ко всему коду.
У меня работает нормально: jsfiddle.net/px7gyvr0. Какой результат вы получите; пустой диалог?