使用文件夹在动态路线中选择slug

问题描述 投票:0回答:1

我目前正在使用Vue.js和Nuxt框架进行网站内部化。我正在从一个页面的网址website.com/my-page移动到website.com/<lang>/my-page

为了做到这一点,并关注documentation,我已将所有页面移动到_lang文件夹中,为我提供以下架构:

pages/
│
└───_lang
│     │ 
|     |__ my-page.vue
|
...

除了<lang> slug现在是强制性的这一事实之外,这完全符合预期,使得访问website.com/my-page返回404。

我希望这个url以我的应用程序中声明的默认语言显示页面。

我发现实现这一目标的唯一方法是在my-page.vue的根部创建另一个pages/,其中包含以下内容:

<script>
import Mypage from '~/pages/_lang/my-page'
export default Mypage
</script>

但是,这意味着为我的网站的每个页面创建这种别名,给我:

pages/
│
│─── my-page.vue
│
└───_lang/
│     │ 
|     |__ my-page.vue
|
...

有没有办法让这个自动化,因为这是一个非常繁琐的过程?

谢谢,

旁注:我一直在调查extendRoutes没有成功。

vue.js nuxt.js nuxt nuxt-i18n
1个回答
2
投票

你可以使用router-extras-module模块。

<router>
    alias:
        - /my-page
</router>
© www.soinside.com 2019 - 2024. All rights reserved.