我试图在sapui5表单中打印一个JSON变量。我有以下代码:
var dataActualMeasure, oModelActualMeasure;
function initActualMeasure() {
dataActualMeasure = {
status: ""
}
oModelActualMeasure = new sap.ui.model.json.JSONModel();
oModelActualMeasure.setData(dataActualMeasure);
sap.ui.getCore().setModel(oModelActualMeasure, "actualMeasure");
};
initActualMeasure();
function updateMeasures() {
oModelActualMeasure.loadData(url + "/?action=Status");
oModelActualMeasure.attachRequestCompleted(
function() {
oModelActualMeasure.refresh();
});
}
var measuresForm = new sap.ui.layout.form.SimpleForm(
"measuresForm", {
maxContainerCols: 1,
editable: true,
content: [
new sap.ui.core.Title({
text: "Kafka Status"
}),
new sap.m.Label({
text: "Status"
}),
new sap.m.Input({
value: "{actualMeasure>/status}"
}).setEditable(false)
]
});
var page = new sap.m.Page("page", {
title: "Results",
content: [
measuresForm
]
});
窗口每1秒刷新一次,因此新的jSON值将分配给变量' status'每一秒都在页面上打印但不是很漂亮。我怎么打印它。 我试着宣布
var jsonString = JSON.stringify(oModelActualMeasure.getData().status);
并在页面内容[]中包含此变量,但这对我没有帮助。请帮我。我是sapui5的初学者。
答案 0 :(得分:1)
使用JSON.stringify
parameters。
//JSON.stringify(value[,replacer[, space]])
var jsonString = JSON.stringify(oModelActualMeasure.getData().status, null, '\t');
空间将执行以下操作(来自developer.mozilla.org):
一个String或Number对象,用于将空白插入输出JSON字符串以便于阅读。如果这是一个数字,则表示用作空格的空格字符数;如果这个数字大于10,则该数字的上限为10。小于1的值表示不应使用空格。如果这是一个String,则字符串(或字符串的前10个字符,如果长于该字符串)用作空格。如果未提供此参数(或为null),则不使用空格。