vue-router - vue路由器路径中的双星号是什么意思?
问题描述
我已经看到一些 vue 路由器配置在路径中包含了这种模式,例如:
{path: "**", component: Xxx}
这是什么意思,与 相比有什么区别path: "*"
?
解决方案
据我了解"*"
,"**"
应该具有相同的功能,因为*
应该匹配任何东西。我可以从源代码中推断出的唯一区别"*"
与这部分代码有关:"**"
// ensure wildcard routes are always at the end
for (var i = 0, l = pathList.length; i < l; i++) {
if (pathList[i] === '*') {
pathList.push(pathList.splice(i, 1)[0]);
此代码块会将"*"
路由移动到末尾,这意味着在匹配通配符路由之前,将首先匹配所有其他已定义的路由。但是,"**"
不会移动到末尾,这意味着后面定义的任何路由"**"
都不会匹配。
推荐阅读
- r - R:将数据框的一列设置为日期时间以创建间隔
- python - 如何使用 Python 使用 Outlook 模板发送邮件?
- java - 将语句插入 Derby 数据库
- python - IndentationError:需要一个缩进块,但它似乎是正确的
- redirect - 如何重定向到根路由
- javascript - 有没有更好的方法来做这个js代码?
- html - 更改 Flexbox HTML 中内容的填充
- java - 从 c 程序编写十六进制字节码 java
- algorithm - 你如何在财富算法中找到圆点?
- java - Java 11 + add-export:java.io.IOException:收到致命警报:handshake_failure