在我的索引文件中,我使用了两个自定义聚合元素: geo-location和gis-service。第一个方法的目的是获取用户的当前位置,然后将纬度和经度提供给gis-service。索引文件的一部分:
<geo-location watchpos></geo-location>
<template is="auto-binding">
<gis-service id="gservice" latitude="{{latitude}}" longitude="{{longitude}}">Use lat and long here</gis-service>
</template>我通过以下方式更新gis-service的纬度和经度:
var t = document.querySelector('template');
var geolocation = document.querySelector('geo-location');
geolocation.addEventListener('geo-response', function(e) {
t.latitude = this.latitude.toFixed(6);
t.longitude = this.longitude.toFixed(6);
});然而,当纬度和经度被传递给gis-service时,它显示它们是未定义的。我怀疑gis-service是在我分配纬度和经度之前调用/执行的。因此,我的问题是,在将地理位置元素分配给gis-service元素之前,如何确保它们被调用(以获取纬度和经度)?
发布于 2015-06-02 22:39:36
您可以使用conditional template检查是否存在某些值。
因此,它将是:
<template if="{{latitude}}">
<template if="{{longitude}}">
<gis-service id="gservice" latitude="{{latitude}}" longitude="{{longitude}}">Use lat and long here</gis-service>
</template></template>https://stackoverflow.com/questions/30546475
复制相似问题