Skip to content

1주차 Mapbox 학습사항

GodDrinkTeJAVA edited this page Nov 18, 2020 · 1 revision

Mapbox API

  • 이벤트는 맵에서 on, off 등으로 끄고 켤 수 있으며, 다양한 이벤트가 지원됩니다. 전반적으로 node의 형태를 지니고 있으나, 프론트엔드의 onclick 등의 이벤트를 가지고 왔습니다. 그 외에도 지도 렌더링, 지도 회전 등의 커스텀 이벤트를 지니고 있습니다.
  • Mapbox의 좌표 체계는 오브젝트로 구현되어 있으며, 이를 반환받기 위해서는 각 생성 메소드에
    1. 각각 두 개의 parameter로
    2. 길이 2의 Array로
    3. 각각의 값을 속성으로 가지는 object. 예를 들어 LngLat의 경우 {lon: xx, lat: yy}
      를 속성으로 받습니다. 이를 각 속성을 만들 수 있는 형태라고 하여 ~like라고 부릅니다. ex. LngLatLike
  • useEffect는 return값으로 unmount될 때의 함수를 반환받습니다. Mapbox는 이를 이용해서 map에서 페이지를 이동하는 등의 행위를 할 때 return으로 map.remove를 호출합니다. 이를 포함하지 않는 경우 Map 오브젝트가 화면이 바뀔 때마다 새로 생성되어 성능 저하를 일으킵니다.
  • react를 이용해서 Mapbox를 구현할 때는 ref 속성을 이용해서 구현합니다. 일반적으로 이는 좋지 못한 구현으로 여겨지지만(state, props를 벗어난 데이터 조작) 외부 라이브러리의 경우 어쩔 수 없습니다. 일반적으로 이를 별도의 패키지로 묶어서 우회합니다. react-mapbox 패키지도 존재하기는 합니다. 이를 멘토분들께서 사용을 허가해줄지는 잘 모르겠습니다.
Clone this wiki locally