Consult vue router regular matching

{
path:"/ aaa/:id",
name: "aaa",
component: aaa
}

the current rules are as above

want to add something after path to match, for example:
/ aaa/12/uid/ UID number
12 is a dynamic route id
uid is a fixed
uid number is a dynamic
/ uid/uid number, this part is optional

I wrote this, but not correctly:
/ aaa/:id (/ uid/:uid)?
Please tell me how to write

when you encounter a previous route, you jump to the home page
/ aaa/12, which means that the previous route is also invalid

.

jump to the home page because this is the last part of the route:
{
path:"*",
redirect:"/"
}

Apr.28,2021

first, the router path of / aaa/12/uid/123 is: / aaa/:id/uid/:uid , without parentheses!
configuration {path:'*', redirect:'/'} refers to the unified location of the above routes that are not matched to the home page.
finally, I have to complain. Have you seen the official documents? ide/essentials/dynamic-matching.html" rel=" nofollow noreferrer "> Vue-Router


'/ uid/uid number', this part is optional

/ aaa/:id/ (uid/:uid)?, the left parenthesis does not contain a slash


I am also obsessed with the role of the three symbols vue-router,?*+ (optional / 0 or multiple / 1 or more) is aimed at passing parameters: id, this part is not regular, so it can be like this / aaa/:id?.
(| aaa) this can match empty or aaa, but (| aaa/:id) this can only match the "aaa/:id" of empty and pure strings. Can't regular and parameters be used together? I can only divide the regularities and parameters into two.


has the landlord solved it yet?

Menu