在NuxtJs路由中如何使用*(星号)?

Jac*_*Goh 2 vue.js vue-router vuejs2 nuxt.js

在由vue-cli生成的普通Vue(不是Nuxt)项目中,*在vue-router中使用像这样工作:

export default new Router({
  routes: [
    {
      path: "/about",
      name: "about",
      component: About,
      children: [
        {
          path: "*",
          component: About
        }
      ]
    }
  ]
});
Run Code Online (Sandbox Code Playgroud)

所有这些路线均有效:

  • /about
  • /about/123
  • /about/123/abc/123/abc

有没有办法在NuxtJs中做到这一点?在Nuxt中,路由是根据文件pages夹中的文件自动生成的。但*对于文件/文件夹名称来说是无效字符。

Ohg*_*why 6

_通常用它来表示通配符,例如:

pages/about/_.vue
Run Code Online (Sandbox Code Playgroud)

将解决/about/*,这是我相信您正在寻找的

如果您要动态目录结构:

pages/about/_/abc/_/abc.vue
Run Code Online (Sandbox Code Playgroud)

会解决about/123/abc/123/abc(但没有多大意义)