imumz/nova-4-map-coordinates

一个 Laravel Nova 字段。

v1.2 2024-09-20 05:02 UTC

This package is auto-updated.

Last update: 2024-09-20 05:07:43 UTC


README

GitHub release (latest by date) Packagist

Nova4MapCoordinates

自定义 Laravel Nova 4 表单字段,使用 Leaflet 从可点击地图标记中检索坐标。支持搜索、谷歌地图、地图高度、标记弹窗和自定义标记图标。

image

安装

composer require imumz/nova-4-map-coordinates

用法

use Imumz\Nova4MapCoordinates\Nova4MapCoordinates
...
Nova4MapCoordinates::make('Coordinates')

可用方法

高度

Nova4MapCoordinates::make('Coordinates')
->height('400px') // default is 300px

谷歌地图

image

默认提供商是 OpenStreetMaps。
您必须设置您的 Google Maps API 密钥(https://developers.google.com/maps/documentation/javascript/get-api-key)。

Nova4MapCoordinates::make('Coordinates')
->googleApiKey('')
->googleMapType('roadmap'), // roadmap, satellite or hybrid

默认瓦片提供商

Nova4MapCoordinates::make('Coordinates')
->defaultTileProvider('google') // google, openstreetmap

默认纬度和经度

Nova4MapCoordinates::make('Coordinates')
->defaultLatitude()
->defaultLongitude()

缩放

设置缩放级别。默认为 8。

Nova4MapCoordinates::make('Coordinates')
->zoom(12)

搜索

搜索提供商仍在开发中。默认为 ESRI。

image

搜索提供商选项

您可以通过 searchProviderOptions 方法传递额外的参数

Nova4MapCoordinates::make('Coordinates')
->searchProviderOptions([
  'sourceCountry' => 'ZA',
])

显示/隐藏坐标字段

坐标输入字段可以被隐藏

Nova4MapCoordinates::make('Coordinates')
->showMapCoordinates(false)

自定义标记图标

Nova4MapCoordinates::make('Coordinates')
->markerIcon('/images/marker-icon.png')

您可以通过传递额外的参数来设置图标大小和锚点

->markerIcon('/images/marker-icon.png',[100,100],[50,50])

image