dhamkith/googlemap

在 Laravel 框架中添加 Google 地图纬度和经度

dev-master 2020-07-28 00:23 UTC

This package is auto-updated.

Last update: 2024-09-28 10:12:54 UTC


README

本软件包支持 Laravel 框架 7.4.0,因此如果您正在使用 Laravel 7.4.0 项目,则可以使用此软件包。

安装

安装过程简单,设置类似于其他 Laravel 软件包。

1. 通过 Composer 安装

首先,通过 Composer 引入软件包。

composer require dhamkith/googlemap

2. 定义服务提供者

接下来,我们需要引入服务提供者。

注意: 此软件包支持 Laravel 7.4 的新 自动发现 功能,因此如果您正在使用 Laravel 7.4 项目,则安装已完成,您可以跳到步骤 3。

如果不工作,则需要添加一个提供者。在您的 config/app.php 文件中定义一个新的服务提供者

'providers' => [
	//  other providers

	Dhamkith\Googlemap\GooglemapServiceProvider::class,
];

3. 发布配置文件和其他资源(可选)

配置文件允许您覆盖此软件包的默认设置以满足您的特定需求。它是可选的,允许您设置

  • 设置 Google Apikey - "google_api_key" => "api key"(可选),
  • URL 路径 - "path" => "map"
  • GoogleMapController 的中间件 - "middleware_for_view" => "auth"
  • "auth" 是默认中间件。您可以在以下情况下覆盖此值,
  • 如果您的应用程序支持多身份验证,则可以将其更改为 "auth:admin"

要生成配置文件和其他资源,请将以下命令输入到您的终端

php artisan vendor:publish --tag=googlemap

这将生成

  • config/googlemap.php 中配置文件。
  • resources/views/vendor/googlemap/all.blade.php 中视图文件。
  • resources/views/vendor/googlemap/create.blade.php 中视图文件。
  • resources/views/vendor/googlemap/edit.blade.php 中视图文件。
  • resources/views/vendor/googlemap/view.blade.php 中视图文件。
  • public/css/googlemap.css 中样式文件。
  • public/js/googlemap.js 中 JavaScript 文件。

4. 迁移(可选)

执行 php artisan migrate 以创建位置表

php artisan migrate

使用

此软件包易于使用。它提供了一些有用的视图组件。

  • <x-map-location-all /> 组件用于显示所有商店数据,
  • <x-map-location-create /> 组件用于创建,
  • <x-map-location-edit :location="$location" /> 组件用于编辑,
  • <x-map-location-view /> 组件用于显示 Google 地图,

1. 添加样式和 JavaScript 文件

将 googlemap.css 样式表标签添加到 'app' 或其他布局的 head 部分中

<head>

<!-- Other code here -->
<link href="{{ asset('css/googlemap.css') }}" rel="stylesheet">

</head>

将 googlemap.js 和 googleapis 链接脚本标签添加到 body 部分中

<body>
<!-- Other html code here  -->

<!-- scripts -->
<script src="{{ asset('js/googlemap.js') }}" defer></script>
<script src="https://maps.googleapis.com/maps/api/js?key={{config('googlemap')['google_api_key']}}&callback=initMap" async defer></script>

</body>

2. 扩展视图

扩展视图 all, create, edit, view

示例: 查看位置 resources/views/vendor/googlemap/create.blade.php

@extends('layouts.app')

@section('content')
    <x-map-location-create/>
@endsection

3. 使用软件包路由

软件包路由的名称为

显示所有商店数据 googlemap.all
{{ route('googlemap.all') }}
获取创建表单 googlemap.create
{{ route('googlemap.create') }}
获取编辑表单 googlemap.edit
{{ route('googlemap.edit') }}
预览 Google 地图 googlemap.preview
{{ route('googlemap.preview') }}

贡献

我鼓励您为此软件包做出贡献,以改进它并使其变得更好。即使您对编码或提交拉取请求(PR)感到不舒服,您也可以通过提交有关错误的报告或请求新功能来支持它,或者简单地帮助讨论现有问题,以提供您的意见并塑造此软件包的进步。

联系

我非常乐意收到您的来信。我在YouTube上运营dhamkith频道,请订阅并查看视频。

您也可以通过dhamkith@gmail.com发送邮件,提出其他请求。