【发布时间】:2020-05-30 03:44:15
【问题描述】:
我有一个 Nuxt 项目,它建立在外部无头 API (JSON) 之上,该 API 向应用程序提供内容。当我尝试运行 npm run generate 时,Nuxt 将创建一个 dist 文件夹,其中包含一个文件夹中的所有路由,并用 index.html 文件填充每个路由。但是,这些 HTML 文件未填充源自 API 的任何内容。预期的行为是我能够看到静态生成的内容。
有人能告诉我为什么预渲染我的应用程序不起作用吗?我怀疑我的 nuxt.config.js 有问题:
generate: {
routes() {
// Routes from headless CMS
const pages = axios.get(`${api}/routes.json`).then((res) => {
return res.data.data.map((item) => {
return item.route
})
})
// External API with vacancies
const vacancies = axios
.get('https://api.external.website')
.then((res) => {
return res.data.jobs.map((item) => {
return '/careers/vacancies/' + item.id
})
})
// Combine both routes
return Promise.all([pages, vacancies]).then((values) => {
return [...values[0], ...values[1]]
})
}
}
【问题讨论】:
标签: vue.js axios nuxt.js server-side-rendering