nuxt3 i18n 适用于非英语字符

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

这是 nuxt 3 与 i18n 的链接


<NuxtLink :to="`${localePath('ser')}/${$t('est')}/${$t('pro')}`">

问题是:当它使用时我收到错误 404 但是并且

No match found for location with path "/fa/%D8%AE%D8%AAA/تن/ج"

但是当页面刷新时,它会正确显示。 为什么以及解决方案是什么?

nuxt.js nuxtjs3 nuxt3 nuxt-i18n
1个回答
0
投票

您错误地使用了 localePath,对于自定义路由,您应该像这样使用它:

<NuxtLink
    :to="localePath({ 
        name: 'category-slug', 
        params: { slug: category.slug } 
    })"
>
   {{ category.title }}
</NuxtLink>

配置如下:

i18n: {
    customRoutes: 'config',
    pages: {
        'category/[slug]': {
        // params need to be put back here as you would with Nuxt 
        Dynamic Routes
        // https://nuxt.com/docs/guide/directory-structure/pages#dynamic-routes
        it: '/categoria/[slug]'
        // ...
    },
}

通过这种方式,您可以定义您想要的任何自定义路线,并避免代码中出现混乱的拼凑。

i18n 自定义路由参考:https://v8.i18n.nuxtjs.org/guide/custom-paths

© www.soinside.com 2019 - 2024. All rights reserved.