Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate to advanced markers (google.maps.Marker is deprecated) #157

Open
JamoCA opened this issue Aug 22, 2024 · 0 comments
Open

Migrate to advanced markers (google.maps.Marker is deprecated) #157

JamoCA opened this issue Aug 22, 2024 · 0 comments

Comments

@JamoCA
Copy link

JamoCA commented Aug 22, 2024

As of February 21st, 2024 (v3.56), google.maps.Marker is deprecated.

In the F12 developer console, the following waring is displayed:

As of February 21st, 2024, google.maps.Marker is deprecated. Please use google.maps.marker.AdvancedMarkerElement instead. At this time, google.maps.Marker is not scheduled to be discontinued, but google.maps.marker.AdvancedMarkerElement is recommended over google.maps.Marker. While google.maps.Marker will continue to receive bug fixes for any major regressions, existing bugs in google.maps.Marker will not be addressed. At least 12 months notice will be given before support is discontinued. Please see https://developers.google.com/maps/deprecations for additional details and https://developers.google.com/maps/documentation/javascript/advanced-markers/migration for the migration guide.

  1. Add code to import the marker library. Note that the previous version of markers (google.maps.Marker) does not have this requirement.
  2. Change google.maps.Marker to google.maps.marker.AdvancedMarkerElement
  3. Add a map ID to your map initialization code. For example mapId: 'DEMO_MAP_ID' for testing purposes if you don't have a map ID already.

Step 1 can be satisfied by adding &libraries=marker to the script loading tag.

Step 2 requires changing google.maps.Marker to google.maps.marker.AdvancedMarkerElement and updating a lot of other options. It doesn't seem to be a simple class change as visible & icon arguments are supported in this new class. draggable is now gmpDraggable and there's lots of other changes too.

Step 3 requires using an ID when initializing the map. I included this by adding this default option to $.fn.locationpicker.defaults

mapId: 'map' + Math.floor(Math.random() * Date.now()),

and then setting it when configuring the gmapContext variable

mapId: settings.mapId,

But there's a lot of other updates that will need to be made too. :(

More information regarding this deprecation is available at:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant