我使用来自谷歌地图的地理编码 api,我试图使用来自服务器的答案来填写表格,问题是,它不是对象的模式,结果[0].address_components有时返回 4、5 和 7 obj,我无法知道一个是城市、国家等,有一些方法可以得到像 result.something.street, 结果.某物.城市等?
else{
Geocode.fromAddress(cep).then(
response => {
const { lat, lng } = response.results[0].geometry.location;
console.log(response.results[0].address_components);
console.log(response);
},
error => {
console.error(error);
}
);
}
你需要过滤对象
工作小提琴
function getValue(adress_components, component_name) {
return adress_components.filter(c => c.types[0] == component_name)[0].long_name
}
var components = response.results[0].address_components;
console.log(getValue(components, 'street_number'));
console.log(getValue(components, 'locality'));
console.log(getValue(components, 'country'));
console.log(getValue(components, 'postal_code'));