我正在尝试根据它们与用户输入位置的距离对React.js中的项目进行排序。以下代码设置API调用。
autofill = (event) => {
var dest = autocomplete.getPlace().geometry.location;
var service = new google.maps.DistanceMatrixService();
var origins = [];
this.props.items.forEach(function(element) {
origins.push(element.latLong);
});
service.getDistanceMatrix({
origins: origins,
destinations: [dest],
travelMode: 'WALKING'}, this.callback);
}
在应用程序的早期,可以过滤存储在this.props.items中的项目。想象一下,有三个项目[1,2,3]
。我过滤掉1,意味着this.props.items
现在等于[2,3]
。我已经通过forEach循环在控制台上打印origin
来验证这一点。
在callback()
内部,请求回调函数,我打印出响应,API返回的originAddresses
列表保存与[1,3]
对应的地址!这怎么可能,因为我只通过了API 2
和3
?
答案 0 :(得分:0)
好的......事实证明我的确有一些错误的坐标,所以这实际上并不是问题。糟糕。