Gridsome无法生成HTML

  • 本文关键字:HTML Gridsome gridsome
  • 更新时间 :
  • 英文 :


我使用Gridsome与Strapi API。我在用api。在gridsome.server.js中使用createPates方法从api获取数据并基于该数据生成页面。下面的代码似乎导致了一个问题:

let localizedOverviewData = {}
if(overviewData.series.localizations?.data) {
overviewData.series.localizations.data.forEach(async locale => {
localizedOverviewData = await axios.get(process.env.API_ENDPOINT_BASE + 'series-info' + query + '&locale=' + locale.attributes.locale, config)
localizedOverviewData = {
series: localizedOverviewData.data.data.attributes,
events: upcomingEvents,
pastEvents: pastEvents
}
createPage({
path: '/' + locale.attributes.locale,
component: './src/templates/Overview.vue',
context: localizedOverviewData
})
createPage({
path: '/' + locale.attributes.locale + '/past-summits',
component: './src/templates/PastSummits.vue',
context: localizedOverviewData
})
})
}

当我构建项目时,我得到

Could not generate HTML for "/zh/past-summits/":
Error: Could not resolve /zh/past-summits.
at assets/js/app.0b54624b.js:4308:23
at /Users/VertizonticalStudios/Websites/discovery-website-generator/node_modules/vue-router/dist/vue-router.common.js:2836:23
at /Users/VertizonticalStudios/Websites/discovery-website-generator/node_modules/vue-router/dist/vue-router.common.js:2266:21
at /Users/VertizonticalStudios/Websites/discovery-website-generator/node_modules/vue-router/dist/vue-router.common.js:2404:7
at step (/Users/VertizonticalStudios/Websites/discovery-website-generator/node_modules/vue-router/dist/vue-router.common.js:2003:7)
at step (/Users/VertizonticalStudios/Websites/discovery-website-generator/node_modules/vue-router/dist/vue-router.common.js:2010:9)
at runQueue (/Users/VertizonticalStudios/Websites/discovery-website-generator/node_modules/vue-router/dist/vue-router.common.js:2014:3)
at /Users/VertizonticalStudios/Websites/discovery-website-generator/node_modules/vue-router/dist/vue-router.common.js:2399:5

你知道是什么问题吗?如果我注释掉两个createPage函数,它就可以正常工作了。

好了,我找到答案了。问题是在我的每个循环上使用'async'。显然这行不通。将它切换到for循环可以修复它。

最新更新