PopupTemplate
var popupTemplate = {
title: "<font color='#F18E00'> Ladestation",
content:[{
type: "text",
text:
"<p><b>Adresse: </b> </br>" +
"{Adresse} </p>" +
"<p><b>Kosten/Zahlungsart: </b> </br>" +
"{Aufladegebühr}</p>" +
"<p><b>Öffnungszeit: </b></br>" +
"{Öffnungszeit:OpenTime}</p> " +
"<p><b>Anschlussmöglichkeiten:</b></br>" +
"{Anschlussmöglichkeiten:findRecords} </br></p>"
},
{
type: "media",
mediaInfos:[{
type: "image",
value: {
sourceURL: "{Bild_Pfad}"
}
}]
}
]
};
facilities.popupTemplate = popupTemplate;
关系查询
findRecords = function (value, key, data) {
var featObjId = data.Name;
var Anschluesse = findRelRecords (featObjId, data);
};
async function findRelRecords (featObjId) {
var FoundAnschluss = "";
var relQueryAnschluss = new RelationshipQuery();
relQueryAnschluss.outFields = ["Anschluss"];
relQueryAnschluss.relationshipId = 0;
relQueryAnschluss.objectIds = [featObjId];
var queryTaskAnschluss = new QueryTask({
url: XXXXXXXXXXXXXXXXXXXXXXXXXXXX
});
await queryTaskAnschluss.executeRelationshipQuery(relQueryAnschluss).then(function(results){
if (results[featObjId]) {
dojo.forEach(results[featObjId].features, function(feature) {
FoundAnschluss = FoundAnschluss + feature.attributes.Anschluss + "<br>";
});
//return FoundAnschluss;
}
});
//return FoundAnschluss
}
直到这里为止,它几乎都是有效的。我在popupTemplate中引用的OpenTime函数也可以正常工作。 (如您所见,我正在获得一个包含我所应用的所有内容的弹出模板,只是“ Anschlussmöglichkeiten”让我头疼。)
因此,我试图查找问题并得出结论,这可能是功能出了什么问题。
我尝试应用异步并等待,因为(也许?)关系查询花费的时间太长,并且始终会返回空白返回。我试图在开发工具中进行追踪。但是在异步解决方案之后,我尝试了两种返回方法,但都没有区别。
我不知道我是否使用了异步并以错误的方式等待,没有在正确的时间退还FoundAnschluss,还是问题出在弹出模板中。 开发控制台中没有出现错误,这让我有些失落。
我真的尽力找到了问题,提出了解决方案,但是作为“ noobie”,我真的迷失了。
我也不是母语人士,如果存在语言障碍,对不起。我将尝试回答任何问题。
(我检查了网址。)