我有:
navigator.geolocation.getCurrentPosition((pos: Position) => {
this.navigation = pos.coords;
}
和
interface INavigation {
lat: number;
lng: number;
<additional parameters>
}
但是position.coords
看起来像这样:
{
latitude: number;
longitude: number;
<additional parameters>
}
虽然它没有代码破解,但我还没有看到有关如何处理这个问题的详细信息。我个人喜欢lat
和lng
短片,但如果它需要像整个额外功能那样广泛的东西,我显然愿意放弃它们。
那么,解决这个问题的最佳方法是什么?我应该放弃它,只是使用全名或者是否有我遗漏的东西?
答案 0 :(得分:2)
是:
navigator.geolocation.getCurrentPosition((pos: Position) => {
const { longitude, latitude, ...props } = pos.coords;
this.navigation = { lng: longitude, lat: latitude, ...props };
}
最好选择更接近输入数据的数据结构(API响应等),只要这不会导致任何其他问题。在相反的情况下,这可能是合理的,因为lng
和lat
的可读性较差。在这种情况下,我会亲自使用longitude
和latitude
,因为这样可以跳过其他转换。