Laravel导航元素工具Laravel Navigation怎么使用
本文讲解"Laravel导航元素工具Laravel Navigation如何使用",希望能够解决相关问题。
虽然 Spatie Laravel Menu 包是 Laravel 的 Html 菜单生成器,但可以将此包视为导航组件的「无渲染组件」:
app(Navigation::class) ->add('Home', route('home')) ->add('Blog', route('blog.index'), function (Section $section) { $section ->add('All posts', route('blog.index')) ->add('Topics', route('blog.topics.index')); }) ->addIf(Auth::user()->isAdmin(), function (Navigation $navigation) { $navigation->add('Admin', route('admin.index')); }); // 渲染到树结构 app(Navigation::class)->tree(); /* [ { "title": "Home", "url": "/", "active": false, "children": [] }, { "title": "Blog", "url": "/blog", "active": false, "children": [ { "title": "All posts", "url": "/blog", "active": false, "children": [] }, { "title": "Topics", "url": "/blog/topics", "active": true, "children": [] } ], }, { "title": "Admin", "url": "/admin", "active": false, "children": [] } ] */
使用这个包,你还可以使用以下方法从导航生成面包屑:
// 在你的控制器中添加额外的页面 app(Navigation::class)->activeSection()->add($topic->name, route('blog.topics.show', $topic)); // Render to breadcrumbs app(Navigation::class)->breadcrumbs(); /* [ { "title": "Blog", "url": "/blog" }, { "title": "Topics", "url": "/blog/topics" }, { "title": "Laravel", "url": "/blog/topics/laravel" } ] */
关于 "Laravel导航元素工具Laravel Navigation如何使用" 就介绍到此。希望多多支持编程宝库。
本文讲解"Node模块化的知识点有哪些",希望能够解决相关问题。什么是模块化模块化是指解决一个复杂问题时,自顶向下逐层把系统划分成若干模块的过程。对于整个系统来说,模块是可组合、分解和更换的单元。在上方的定义中 ...