Код: Выделить всё
.
├── clothes
│ ├── mens
│ │ ├── brand a
│ │ │ ├── tshirts
│ │ │ │ ├── style a
│ │ │ │ │ ├── short sleeve
│ │ │ │ │ └── long sleeve
│ │ │ │ └── style b
│ │ │ └── jeans
│ │ │ ├── style a
│ │ │ └── style b
│ │ └── brand b
│ │ ├── tshirts
│ │ │ ├── style a
│ │ │ └── style b
│ │ └── jeans
│ │ ├── style a
│ │ └── style b
│ └── womens
│ ├── brand a
│ │ ├── tshirts
│ │ │ ├── style a
│ │ │ └── style b
│ │ └── jeans
│ │ ├── style a
│ │ └── style b
│ └── brand c
│ ├── tshirts
│ │ ├── style a
│ │ │ ├── short sleeve
│ │ │ └── long sleeve
│ │ └── style b
│ └── jeans
│ ├── style a
│ └── style b
├── toys
│ ├── 0-6
│ │ ├── cars
│ │ └── dolls
│ └── 7-12
│ ├── cars
│ └── dolls
└── offers
├── clothes
│ ├── mens
│ │ └── brand a
│ │ ├── tshirts
│ │ │ ├── style a
│ │ │ │ ├── short sleeve
│ │ │ │ └── long sleeve
│ │ │ └── style b
│ │ └── jeans
│ │ ├── style a
│ │ └── style b
│ └── womens
│ └── brand c
│ ├── tshirts
│ │ ├── style a
│ │ │ ├── short sleeve
│ │ │ └── long sleeve
│ │ └── style b
│ └── jeans
│ ├── style a
│ └── style b
└── toys
├── 0-6
│ ├── cars
│ └── dolls
└── 7-12
├── cars
└── dolls
Изначально я использовал маршрут типа и использовал location.state для передачи идентификатора с навигацией. Затем я мог запросить этот идентификатор в своей базе данных, и это было достаточно просто.
Это сработало для навигации по сайту, но мы хотим иметь возможность использовать URL-адреса в объявлениях, которые не будут передавать location.state, чтобы URL-адрес мог быть /category/special-offers/mens/brand-a/tshirts или Category/toys/0-6/cars
Думаю, мне придется использовать такой маршрут:
Код: Выделить всё
Код: Выделить всё
let { c1, c2, c3, c4, c5, c6, c7, c8, c9, c10 } = useParams();
let categoryTree = [c1, c2, c3, c4, c5, c6, c7, c8, c9, c10];
categoryTree = categoryTree.filter(elm => elm);
Нужно ли мне начинать запрашивать мою базу данных для категории верхнего уровня и запрашивать имя каждой категории с ее родительским элементом?
Итак, для /category/special-offers/mens/brand-a/tshirts
я бы начал с чего-то вроде name:special-offers && ParentId:null
Затем, когда я получу это имя идентификатора:mens && родительскийId:{Id из первого запроса
и так далее.
Или есть лучший способ структурировать мою базу данных для запроса рассматриваемой категории со всем путем?
Подробнее здесь: https://stackoverflow.com/questions/798 ... ories-at-d
Мобильная версия