静态生成的网站并提取

时间:2020-11-06 16:44:16

标签: nuxt.js

这是我的第一篇文章,所以请和我一起放松!我正在使用nuxt generate来填充静态生成的网站的dist文件夹。当我浏览网站时,由于某种原因,提取不会在初始页面加载时执行,而是在导航到另一个页面时执行。有没有办法让提取操作在初始页面加载时执行?

它必须是静态生成的网站。我不能使用nuxt start。

浏览网站时,我可以看到调用了fetch,并且随后的页面通过客户端动态加载。

async fetch ({ store, params, error }) {
    try {
      await store.dispatch('page/getPageById', params.id ? params.id : 'home')      
    }
    catch {
      error({ statusCode: 404, message: 'This page could not be found' })
    }
  }

我不介意首先显示静态生成的页面,然后将其替换为获取的结果。

我尝试在名为Preview.client.js的插件中使用EnablePreview,并在URL上附加?preview = true,但这没有效果。

export default async function ({ query, enablePreview }) {
    if (query.preview) {    
        enablePreview()
    }
}

如果打开浏览器控制台,然后键入

$nuxt.refresh()

发出要提取的请求,我得到了所需的东西。如果这是正确的方法,则应在代码内的哪里调用$ nuxt.refresh(),以便仅在页面的初始加载时调用它。我不想在mount()中使用它,因为它将在每个页面上调用。

很抱歉,如果我不清楚,请告诉我您是否遇到过同样的情况,和/或知道如何解决此问题。

0 个答案:

没有答案