shibuyakosuke/laravel-crud-breadcrumbs

Laravel项目面包屑导航

1.0.1 2020-09-12 03:00 UTC

This package is auto-updated.

Last update: 2024-09-25 19:44:49 UTC


README

Laravel7+ 的面包屑包

灵感来源于 dwightwatson/breadcrumbs

安装

composer require shibuyakosuke/laravel-crud-breadcrumbs

发布资产

php artisan vendor:publish --tag=breadcrumbs

使用方法

在 routes/breadcrumbs.php 中创建一个新的文件来定义你的面包屑。默认情况下,该包将与命名路由一起工作,适用于资源路由。然而,你也可以自由地定义通过控制器操作/对的路由。

use App\Models\User;

Breadcrumbs::for('home', function ($trail) {
    $trail->add('Home', route('home'));
});

Breadcrumbs::for('users.index', function ($trail) {
    $trail->parent('home');
    $trail->add('Users', route('users.index'));
});

Breadcrumbs::for('users.show', function ($trail, User $user) {
    $trail->parent('users.index');
    $trail->add($user->name, route('users.show', $user));
});

Breadcrumbs::for('users.edit', function ($trail, User $user) {
    $trail->parent('users.show', $user);
    $trail->add('Edit', route('users.edit', $user));
});

渲染面包屑

在你的视图文件中,你只需要在你想显示面包屑的地方调用 render() 方法。就这么简单。如果没有当前路由的面包屑,则不会返回任何内容。

{{ Breadcrumbs::render() }}

你不需要对面包屑的内容进行转义,它已经包含在 Illuminate\Support\HtmlString 的实例中,因此 Laravel 知道如何使用它。