关系查询请求的问题

时间:2018-07-15 14:35:36

标签: javascript function asynchronous return return-value

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”,我真的迷失了。

我也不是母语人士,如果存在语言障碍,对不起。我将尝试回答任何问题。

(我检查了网址。)

0 个答案:

没有答案