3.6. 前台类目菜单

本教程最新版为 8.x,当前版本已放弃维护,请阅读最新版本!

前台类目菜单

上一节我们完成了商品列表页面按类目筛选的功能,但是只能手动传入 category_id 参数才能访问到,这对普通用户是很不友好的。

本章节我们将要在顶部导航栏添加一个类目菜单,与 Laravel-China 的分类菜单类似:

file

1. 构建类目树

由于我们是一个无限级的商品类目,当用户鼠标移动到父类目时还需弹出对应的子类目,因此我们需要先将所有的类目从数据库中取出,并按照父子关系构建成树状。

由于这是一个比较通用的功能,因此我们把这个方法封装到 CategoryService 类中,首先创建这个类文件:

$ touch app/Services/CategoryService.php

app/Services/CategoryService.php

<?php
namespace App\Services;

use App\Models\Category;

class CategoryService
{
    // 这是一个递归方法
    // $parentId 参数代表要获取子类目的父类目 ID,null 代表获...

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 10

royxu
分类菜单无法正常显示
2 个点赞 | 4 个回复 | 问答 | 课程版本 5.7
18874127314
我点击菜单栏也报错
1 个点赞 | 2 个回复 | 问答 | 课程版本 5.7
Morrow
点击所有类目出错
0 个点赞 | 7 个回复 | 问答 | 课程版本 5.7
mark666
递归影响效率
0 个点赞 | 5 个回复 | 问答 | 课程版本 5.5
xuelong
ruodee
前端报错,按钮无反应,求指点
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.7
fidy
类目下面的分页跳转错误
0 个点赞 | 1 个回复 | 问答 | 课程版本 8.x
Boxer
TaylorXie
菜单栏点击无效
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5