我试图让nuxt生成本地化的动态路由。我用nuxt-i18n翻译每条路线。
以下是我的nuxt-i18n配置:
['nuxt-i18n', {
lazy: true,
locales: [
{
name: 'French',
code: 'fr',
iso: 'fr-ch',
file: 'fr.json'
},
{
name: 'German',
code: 'de',
iso: 'de-ch',
file: 'de.json'
},
{
name: 'Italian',
code: 'it',
iso: 'it-ch',
file: 'it.json'
},
],
langDir: 'lang/',
defaultLocale: 'fr',
parsePages: false,
pages: {
'advice/_uid': {
fr: '/conseil/:uid',
de: '/ratschlag/:uid',
it: '/consiglio/:uid',
},
}
}]如文件所述:
动态路径被generate命令忽略(纱线生成)。Nuxt不知道这些路由将是什么,所以它无法生成它们。
因此,我试图适应他们的榜样,并使用我的无头CMS的Api来重建所有的路线,但不幸的是,nuxt没有产生它们,因为某些原因。我尝试使用文件结构(即/advice/_uid.vue),而不是本地化的路由,希望nuxt-i18n能为我处理这个问题,但这方面也没有任何进展。
这是我的nuxt.config.js:
import Prismic from 'prismic-javascript'
const prismicEndpoint = 'https://some-repository.cdn.prismic.io/api/v2'
const advices = () =>
Prismic.getApi(prismicEndpoint)
.then(api =>
api.query(Prismic.Predicates.at('document.type', 'advice'), {
pageSize: 100,
})
)
.then(res => {
return [
...res.results.map(advice => `/conseil/${advice.uid}`),
]
})
// Some more code...
export default {
// Some more code...
generate: {
fallback: '404.html',
advices
}
}运行npm run generate时没有错误,尽管它不会生成任何这些路由。在我使用nuxt-i18n定位我的路线之前,它曾经运行得很好。
是否有任何方法使nuxt或nuxt-i18n生成局部的非哺乳动物路径?
谢谢你的帮忙!
发布于 2020-06-24 15:52:15
你确定这里没有打印错误吗?
generate: {
fallback: '404.html',
advices
}您的函数应该以routes作为它的键,因此它应该是:
generate: {
fallback: '404.html',
routes: advices
}https://stackoverflow.com/questions/62404805
复制相似问题