imumz / nova-4-map-coordinates
一个 Laravel Nova 字段。
v1.2
2024-09-20 05:02 UTC
Requires
- php: ^7.3|^8.0
- laravel/nova: ^4.0
README
Nova4MapCoordinates
自定义 Laravel Nova 4 表单字段,使用 Leaflet 从可点击地图标记中检索坐标。支持搜索、谷歌地图、地图高度、标记弹窗和自定义标记图标。
安装
composer require imumz/nova-4-map-coordinates
用法
use Imumz\Nova4MapCoordinates\Nova4MapCoordinates
...
Nova4MapCoordinates::make('Coordinates')
可用方法
高度
Nova4MapCoordinates::make('Coordinates')
->height('400px') // default is 300px
谷歌地图
默认提供商是 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。
搜索提供商选项
您可以通过 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])